文章生成器(单文件java版)
读到 这篇 《 so easy! 10行代码写个"狗屁不通"文章生成器》文章后,发现文章生成很有意思,作者用python写的,还写了多个文件做成了项目,而我想根写一个单文件java版工具类来做文章生成器,继续发扬 文章生成器 的这个创新,拿“狗屁不通”应对“形势主义”。
干活代码
package com.love.loveMe.pub.utils;import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;public final class EssayGenerator {public static void main(String[] args) {String theme = "希望";String res = essayGenerator(theme );System.out.println(res);}private static String essayGenerator(String theme) {return essayGenerator(theme,600);}private static String essayGenerator(String theme, int sum) {StringBuffer res = new StringBuffer(sum);while(res.length()<sum){int num = (int) (Math.random() * 100);if (num < 5){//5%概率换个行res.append("\r\n");}else if (num < 30){//25%概率说个名言res.append(randomChoice(famous).replace("a",randomChoice(before)).replace("b",randomChoice(after)));if((int) (Math.random() * 100)<50){//写完名言后50%概率换个行res.append("\r\n");}}else{//70%概率说着车轱辘话,为了不能跑题啊,哈哈哈res.append(randomChoice(remark).replace("x",theme));}}return res.toString();}public static <T> T randomChoice(List<T> data) {//随机取一个工具函数,不理解泛型的,把T换成Stringint num = (int) (Math.random() * data.size());return data.get(num);}private EssayGenerator() {}static List<String> famous = Arrays.asList("爱迪生a,天才是百分之一的勤奋加百分之九十九的汗水。b","查尔斯·史a,一个人几乎可以在任何他怀有无限热忱的事情上成功。b","培根说过,深窥自己的心,而后发觉一切的奇迹在你自己。b","歌德曾经a,流水在碰到底处时才会释放活力。b","莎士比亚a,那脑袋里的智慧,就像打火石里的火花一样,不去打它是不肯出来的。b","戴尔·卡耐基a,多数人都拥有自己不了解的能力和机会,都有可能做到未曾梦想的事情。b","白哲特a,坚强的信念能赢得强者的心,并使他们变得更坚强。b","伏尔泰a, 不经巨大的困难,不会有伟大的事业。b","富勒曾经a, 苦难磨炼一些人,也毁灭另一些人。b","文森特·皮尔a, 改变你的想法,你就改变了自己的世界。b","拿破仑·希尔a, 不要等待,时机永远不会恰到好处。b","塞涅卡a, 生命如同寓言,其价值不在与长短,而在与内容。b","奥普拉·温弗瑞a, 你相信什么,你就成为什么样的人。b","吕凯特a, 生命不可能有两次,但许多人连一次也不善于度过。b","莎士比亚a, 人的一生是短的,但如果卑劣地过这一生,就太长了。b","笛卡儿a, 我的努力求学没有得到别的好处,只不过是愈来愈发觉自己的无知。b","左拉a, 生活的道路一旦选定,就要勇敢地走到底,决不回头。b","米歇潘a, 生命是一条艰险的峡谷,只有勇敢的人才能通过。b","吉姆·罗恩a, 要么你主宰生活,要么你被生活主宰。b","日本谚语a, 不幸可能成为通向幸福的桥梁。b","海贝尔a, 人生就是学校。在那里,与其说好的教师是幸福,不如说好的教师是不幸。b","杰纳勒尔·乔治·S·巴顿a, 接受挑战,就可以享受胜利的喜悦。b","德谟克利特a, 节制使快乐增加并使享受加强。b","裴斯泰洛齐a, 今天应做的事没有做,明天再早也是耽误了。b","歌德a, 决定一个人的一生,以及整个命运的,只是一瞬之间。b","卡耐基a, 一个不注意小事情的人,永远不会成就大事业。b","卢梭a, 浪费时间是一桩大罪过。b","康德a, 既然我已经踏上这条道路,那么,任何东西都不应妨碍我沿着这条路走下去。b","克劳斯·莫瑟爵士a, 教育需要花费钱,而无知也是一样。b","伏尔泰a, 坚持意志伟大的事业需要始终不渝的精神。b","亚伯拉罕·林肯a, 你活了多少岁不算什么,重要的是你是如何度过这些岁月的。b","韩非a, 内外相应,言行相称。b","富兰克林a, 你热爱生命吗?那么别浪费时间,因为时间是组成生命的材料。b","马尔顿a, 坚强的信心,能使平凡的人做出惊人的事业。b","笛卡儿a, 读一切好书,就是和许多高尚的人谈话。b","塞涅卡a, 真正的人生,只有在经过艰难卓绝的斗争之后才能实现。b","易卜生a, 伟大的事业,需要决心,能力,组织和责任感。b","歌德a, 没有人事先了解自己到底有多大的力量,直到他试过以后才知道。b","达尔文a, 敢于浪费哪怕一个钟头时间的人,说明他还不懂得珍惜生命的全部价值。b","佚名a, 感激每一个新的挑战,因为它会锻造你的意志和品格。b","奥斯特洛夫斯基a, 共同的事业,共同的斗争,可以使人们产生忍受一切的力量。 b","苏轼a, 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。b","王阳明a, 故立志者,为学之心也;为学者,立志之事也。b","歌德a, 读一本好书,就如同和一个高尚的人在交谈。b","乌申斯基a, 学习是劳动,是充满思想的劳动。b","别林斯基a, 好的书籍是最贵重的珍宝。b","富兰克林a, 读书是易事,思索是难事,但两者缺一,便全无用处。b","鲁巴金a, 读书是在别人思想的帮助下,建立起自己的思想。b","培根a, 合理安排时间,就等于节约时间。b","屠格涅夫a, 你想成为幸福的人吗?但愿你首先学会吃得起苦。b","莎士比亚a, 抛弃时间的人,时间也抛弃他。b","叔本华a, 普通人只想到如何度过时间,有才能的人设法利用时间。b","博a, 一次失败,只是证明我们成功的决心还够坚强。 维b","拉罗什夫科a, 取得成就时坚持不懈,要比遭到失败时顽强不屈更重要。b","莎士比亚a, 人的一生是短的,但如果卑劣地过这一生,就太长了。b","俾斯麦a, 失败是坚忍的最后考验。b","池田大作a, 不要回避苦恼和困难,挺起身来向它挑战,进而克服它。b","莎士比亚a, 那脑袋里的智慧,就像打火石里的火花一样,不去打它是不肯出来的。b","希腊a, 最困难的事情就是认识自己。b","黑塞a, 有勇气承担命运这才是英雄好汉。b","非洲a, 最灵繁的人也看不见自己的背脊。b","培根a, 阅读使人充实,会谈使人敏捷,写作使人精确。b","斯宾诺莎a, 最大的骄傲于最大的自卑都表示心灵的最软弱无力。b","西班牙a, 自知之明是最难得的知识。b","塞内加a, 勇气通往天堂,怯懦通往地狱。b","赫尔普斯a, 有时候读书是一种巧妙地避开思考的方法。b","笛卡儿a, 阅读一切好书如同和过去最杰出的人谈话。b","邓拓a, 越是没有本领的就越加自命不凡。b","爱尔兰a, 越是无能的人,越喜欢挑剔别人的错儿。b","老子a, 知人者智,自知者明。胜人者有力,自胜者强。b","歌德a, 意志坚强的人能把世界放在手中像泥块一样任意揉捏。b","迈克尔·F·斯特利a, 最具挑战性的挑战莫过于提升自我。b","爱迪生a, 失败也是我需要的,它和成功对我一样有价值。b","罗素·贝克a, 一个人即使已登上顶峰,也仍要自强不息。b","马云a, 最大的挑战和突破在于用人,而用人最大的突破在于信任人。b","雷锋a, 自己活着,就是为了使别人过得更美好。b","布尔沃a, 要掌握书,莫被书掌握;要为生而读,莫为读而生。b","培根a, 要知道对好事的称颂过于夸大,也会招来人们的反感轻蔑和嫉妒。b","莫扎特a, 谁和我一样用功,谁就会和我一样成功。b","马克思a, 一切节省,归根到底都归结为时间的节省。b","莎士比亚a, 意志命运往往背道而驰,决心到最后会全部推倒。b","卡莱尔a, 过去一切时代的精华尽在书中。b","培根a, 深窥自己的心,而后发觉一切的奇迹在你自己。b","罗曼·罗兰a, 只有把抱怨环境的心情,化为上进的力量,才是成功的保证。b","孔子a, 知之者不如好之者,好之者不如乐之者。b","达·芬奇a, 大胆和坚定的决心能够抵得上武器的精良。b","叔本华a, 意志是一个强壮的盲人,倚靠在明眼的跛子肩上。b","黑格尔a, 只有永远躺在泥坑里的人,才不会再掉进坑里。b","普列姆昌德a, 希望的灯一旦熄灭,生活刹那间变成了一片黑暗。b","维龙a, 要成功不需要什么特别的才能,只要把你能做的小事做得好就行了。b","郭沫若a, 形成天才的决定因素应该是勤奋。b","洛克a, 学到很多东西的诀窍,就是一下子不要学很多。b","西班牙a, 自己的鞋子,自己知道紧在哪里。b","拉罗什福科a, 我们唯一不会改正的缺点是软弱。b","亚伯拉罕·林肯a, 我这个人走得很慢,但是我从不后退。b","美华纳a, 勿问成功的秘诀为何,且尽全力做你应该做的事吧。b","俾斯麦a, 对于不屈不挠的人来说,没有失败这回事。b","阿卜·日·法拉兹a, 学问是异常珍贵的东西,从任何源泉吸收都不可耻。b","白哲特a, 坚强的信念能赢得强者的心,并使他们变得更坚强。 b","查尔斯·史考伯a, 一个人几乎可以在任何他怀有无限热忱的事情上成功。 b","贝多芬a, 卓越的人一大优点是:在不利与艰难的遭遇里百折不饶。b","莎士比亚a, 本来无望的事,大胆尝试,往往能成功。b","卡耐基a, 我们若已接受最坏的,就再没有什么损失。b","德国a, 只有在人群中间,才能认识自己。b","史美尔斯a, 书籍把我们引入最美好的社会,使我们认识各个时代的伟大智者。b","冯学峰a, 当一个人用工作去迎接光明,光明很快就会来照耀着他。b","吉格·金克拉a, 如果你能做梦,你就能实现它。b");static List<String> remark = Arrays.asList("现在, 解决x的问题, 是非常非常重要的. 所以, ","我们不得不面对一个非常尴尬的事实, 那就是, ","x的发生, 到底需要如何做到, 不x的发生, 又会如何产生. ","而这些并不是完全重要, 更加重要的问题是, ","x, 到底应该如何实现. ","带着这些问题, 我们来审视一下x. ","所谓x, 关键是x需要如何写. ","我们一般认为, 抓住了问题的关键, 其他一切则会迎刃而解.","问题的关键究竟为何? ","x因何而发生?","每个人都不得不面对这些问题. 在面对这种问题时, ","一般来讲, 我们都必须务必慎重的考虑考虑. ","要想清楚, x, 到底是一种怎么样的存在. ","了解清楚x到底是一种怎么样的存在, 是解决一切问题的关键.","就我个人来说, x对我的意义, 不能不说非常重大. ","本人也是经过了深思熟虑,在每个日日夜夜思考这个问题. ","x, 发生了会如何, 不发生又会如何. ","在这种困难的抉择下, 本人思来想去, 寝食难安.","生活中, 若x出现了, 我们就不得不考虑它出现了的事实. ","这种事实对本人来说意义重大, 相信对这个世界也是有一定意义的.","我们都知道, 只要有意义, 那么就必须慎重考虑.","既然如此, ","那么, ","我认为, ","一般来说, ","总结的来说, ","既然如何, ","经过上述讨论, ","这样看来, ","从这个角度来看, ","我们不妨可以这样来想: ","这是不可避免的. ","可是,即使是这样,x的出现仍然代表了一定的意义. ","x似乎是一种巧合,但如果我们从一个更大的角度看待问题,这似乎是一种不可避免的事实. ","在这种不可避免的冲突下,我们必须解决这个问题. ","对我个人而言,x不仅仅是一个重大的事件,还可能会改变我的人生. ");static List<String> before = Arrays.asList("曾经说过","在不经意间这样说过","说过一句著名的话","曾经提到过","说过一句富有哲理的话");static List<String> after = Arrays.asList("这不禁令我深思. ","带着这句话, 我们还要更加慎重的审视这个问题: ","这启发了我. ","我希望诸位也能好好地体会这句话. ","这句话语虽然很短, 但令我浮想联翩. ","这句话看似简单,但其中的阴郁不禁让人深思. ","这句话把我们带到了一个新的维度去思考这个问题: ","这似乎解答了我的疑惑. ");
}
欢迎各位斧正,提出异议、建议、以及技术问题。
文章生成器(单文件java版)相关推荐
- 软碟通(UltraISO)9.7.6.3812单文件高级版
UltraISO 是一款 CD/DVD ISO 镜像文件创建/编辑/转换工具并可制作可引导 CD/DVD 光盘,它可直接编辑 CD/DVD 镜像文件并从中提取文件和文件夹,或直接从您的 CD/DVD- ...
- IE6 单文件绿色版
IE6单文件绿色版,可以直接运行,无需安装,完美兼容Win10(自带2016年1月更新). https://www.lanzous.com/i3w7dej 转载于:https://www.cnblog ...
- 开源作品-PHP写的Redis管理工具(单文件绿色版)-SuRedisAdmin_PHP_1_0
前言: 项目开发用到了Redis,但是在调试Redis数据的时候,没有一款通用的可视化管理工具.在网络找了一些,但是感觉功能上都不尽人意,于是决定抽出一点时间,开发一个用起来顺手的Redis管理工具. ...
- 【lizhi125】Cameyo - 简单几步轻松制作单文件绿色版软件!
当安装的东西越多,日积月累之后,Windows 就会运行得越来越慢,于是网络上绿色软件 (便携版软件) 特别的受欢迎.可是很多时候,在一些网站上下载的绿色软件会被偷偷加了病毒或木马,又或者自己需要的软 ...
- Wise Care 365 Pro(系统优化工具) 绿色单文件特别版
1.软件内置的系统清理模块内提供有四个清理服务,分别是注册表清理.常规清理.高级清理和系统瘦身: 2.系统优化模块内提供有五个优化服务,分别是系统优化.磁盘整理.注册表整理.启动项管理和右键菜单管理: ...
- /opt/hbase/conf 中不能启动hbase_Ventoy下载 U盘启动盘制作 Ventoy v1.0.25 单文件便携版 附使用教程 下载...
Ventoy最新单文件版 是新一代多系统启动U盘解决方案.国产开源免费的U盘启动引导制作工具,支持Legacy BIOS和UEFI模式,理论上几乎支持任何ISO镜像文件,支持加载多个不同类型的ISO文 ...
- [天龙/汉威]可变信息标志通信协议-向可变信息标志上载文件(JAVA版)
1.代码如下 package com.xi.board.common;import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.check ...
- ictclas4j java_使用继续完善前人写的文章:使用ICTCLAS JAVA版(ictclas4j)进行中文分词...
一.ICTCLAS的介绍 中国科学院计算技术研究所在多年研究基础上,耗时一年研制出了基于多层隐码模型的汉语词法分析系统 ICTCLAS(Institute of Computing Technolog ...
- 通过ZPL指令调用zebra打印机打印面单(java版)
1.获取打印机的IP及端口(端口默认为9100): 2.通过RabbitMQ发送监听调用打印方法: 3.查询数据库中打印机是否存在,并获取打印机IP及端口: 4.查询要打印的订单信息及明细: 5.打印 ...
最新文章
- 安装linux和windows双系统
- 使用jsonpath从kettle转换json2csv
- SM66 does not have debug button in Q system
- 19_05_01校内训练[polygon]
- KnockoutJS-与服务端交互
- boost::asio::io_context的事件循环
- 打包后找不到so_RTX 3090安装cuda11.1 找不到libcusolver.so.10
- 【笔记】编译报错error: cannot convert ‘main(int, char**)::sockadrr*’ to ‘const sockaddr*’ for
- 工程实践,淘宝直播高画质低延时技术探索
- 华为novia3i鸿蒙,华为nova3i一马当先:值得年轻人购买的智能手机推荐
- CA(载波聚合)和MIMO
- 阿里云服务器ECS(VPS)介绍及使用视频教程和优惠活动
- 加元预测:油价仍是关键驱动因素 - 加元/日元、美元/加元设置
- MQTT Mosquitto安装和使用
- Vert.x整合springboot
- Mac Safari 配置 IE 代理 (支持 IE 调试)
- Linux上安装Adminer
- 微信分享带缩略图,标题,简介的JS代码(亲测有效)
- 引流获客哪个渠道比较好?
- 图像处理用什么神经网络,神经网络输入图片大小