马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
闲来无事,突发感想,想看看一生的时间规划,写了个小功能来计算一生的时间,运行后感触颇深,分享给大家,欢迎大家留言改正数据。
您的一生总结如下:
您一生总共度过了90年,共计32400天(777600小时)
您一生总共:
吃饭用时:88920小时,相当于3705天
睡觉用时:239760小时,相当于9990天
学习用时:49680小时,相当于2070天
工作用时:118800小时,相当于4950天
您一生在娱乐上花费的时间有:44280小时,相当于1845天
您一生在路上消耗:78480小时,相当于3270天
您为家庭付出用时:41040小时,相当于1710天
您一生处于发呆或神志不清状态用时:48960小时,相当于2040天
您一生虚度的时光有:67680小时,相当于2820天
如果一生有90年,我们为家庭付出的时间是最少的(1710天),我们在学习上花费的时间仅有2070天。就寝占用了我们大多数时间,其次是工作,在路上消耗的时间竟然有3270天,而且处于发呆或神志不清状态的时间也远超我们为家庭付出的时间,如果再加上虚度的时光,我们一生有多少时间将被浪费掉。
感爱好的朋友可以调整一下得当本身的数据,测一测本身一生的时间安排,千人千面,希望大家能爱惜时间、爱惜家人。
定义一个“一日模型”——DayModel.java
注:为提高步伐效率,将接纳原型模式的克隆方法构建一日,因此实现Cloneable接口
编写一生计算过程——Life.java
假设一生有90年,假设一年有360天,假设这里的代码是我们本身,假设……
- package com.xfather.muhalgorithm.conception;
- import com.xfather.muhalgorithm.conception.entity.DayModel;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.concurrent.atomic.AtomicInteger;
- /**
- * @Description : 人生生成器
- * @Author : 0xfather
- * @Date : 2023/4/21 14:51
- * @Version : 1.0
- */
- public class Life {
- // 人生清单
- private final List<DayModel> lifeList;
- private static final int YearOfLife = 90;
- private static final int DaysOfYear = 360;
- public static Life build(){
- return new Life();
- }
- private Life() {
- lifeList = new ArrayList<>();
- DayModel model = new DayModel(1,2,16,3,0,0,1,0,0);
- model.setDescription("你出生了,来到这个懵懂的世界。你大多数时间都是在睡觉,无需考虑学习、工作和责任等事情");
- lifeList.add(model);
- // 人生90年清单
- for (int i = 2; i <= YearOfLife; i++) {
- model = model.clone();
- // 没有特别声明,不显示描述
- model.setDescription("");
- model.setAge(i);
- switch (i){
- case 2 -> {
- model.setPlay(5);
- model.setRoad(1);
- model.setSleep(14);
- model.setDescription("你会走路了,有更多的时间玩耍");
- }
- case 3 -> {
- model.setSleep(11);
- model.setPlay(6);
- }
- case 5 -> {
- model.setSleep(10);
- model.setLearn(4);
- model.setRoad(2);
- model.setStupefied(0);
- model.setDescription("开始上幼儿园了,你开始调整状态进入学生时代");
- }
- case 6 -> {
- model.setSleep(9);
- model.setDescription("");
- }
- case 8 -> {
- model.setPlay(5);
- model.setSleep(8);
- model.setLearn(6);
- model.setDescription("上小学了,你每天有更多的学习任务,睡眠时间也逐渐规律起来");
- }
- case 11 -> {
- model.setPlay(4);
- model.setSleep(7);
- model.setLearn(7);
- model.setDescription("小学4年级了,学业逐渐增多,家长在为你考虑考那所初中");
- }
- case 13 -> {
- model.setPlay(3);
- model.setLearn(8);
- model.setDescription("小学的最后冲刺,学习时间已经适应了8小时以上,家长允许玩的时间减少了");
- }
- case 14 -> {
- model.setPlay(2);
- model.setLearn(9);
- model.setRoad(3);
- model.setDescription("上初中了,你学会了自律,有更多的时间学习,学校离家的距离变远了,你要走的路程增加了");
- }
- case 15 -> {
- model.setPlay(1);
- model.setLearn(10);
- model.setStupefied(1);
- model.setDescription("初二的学习压力更大了,因为要考虑上哪所高中,已经每太多时间玩了,但因为学习压力大,你学会了发呆……");
- }
- case 17 -> {
- model.setStupefied(2);
- model.setRoad(2);
- model.setSleep(6);
- model.setDescription("进入高中时期,学业依然很重,你离家很远,但是你寄宿在学校,每天的路程反倒变少了;但你进入青春期,心理活动更丰富了");
- }
- case 19 -> {
- model.setLearn(11);
- model.setSleep(5);
- model.setDescription("高考冲刺,很累,学习压力很大,睡眠时间很少");
- }
- case 20 -> {
- model.setLearn(6);
- model.setSleep(7);
- model.setPlay(3);
- model.setStupefied(3);
- model.setDescription("你考上了大学,学业明显感觉轻松了,睡眠时间也恢复了,很多时间是由你自己规划的");
- }
- case 22 -> model.setLearn(5);
- case 23 -> {
- model.setLearn(3);
- model.setRoad(4);
- model.setStupefied(4);
- model.setSleep(6);
- model.setDescription("临近毕业,你开始找工作/找实习单位,学习时间少了很多");
- }
- case 24 -> {
- model.setLearn(2);
- model.setStupefied(1);
- model.setWork(8);
- model.setSleep(6);
- model.setRoad(3);
- model.setPlay(2);
- model.setDescription("你找到了工作,在工作中发现自身不足,所以会继续充电学习");
- }
- case 25 -> {
- model.setLearn(0);
- model.setResponsibility(3);
- model.setSleep(5);
- model.setDescription("你谈恋爱了,每天内心充满责任感,在工作之余去感受爱情");
- }
- case 27 -> {
- model.setResponsibility(4);
- model.setWork(10);
- model.setSleep(4);
- model.setResponsibility(2);
- model.setDescription("你结婚了,为了结婚你加班工作,只为能多赚一些钱");
- }
- case 28 -> {
- model.setResponsibility(3);
- model.setWork(9);
- model.setSleep(5);
- model.setStupefied(0);
- model.setDescription("你计划买房/买车,除了工作还是要加班");
- }
- case 29 -> {
- model.setRoad(2);
- model.setDescription("你买了房子/车子,你在路途中的时间减少了,同样你发现加班并不能给你带来多少钱");
- }
- case 32 -> {
- model.setSleep(4);
- model.setResponsibility(5);
- model.setDescription("恭喜你,你有了孩子,责任心令你很充实");
- }
- case 34 -> {
- model.setSleep(6);
- model.setPlay(1);
- model.setResponsibility(3);
- }
- case 37 -> {
- model.setWork(10);
- model.setResponsibility(3);
- model.setDescription("孩子上幼儿园了,又多了一笔开销,你又开始拼命加班了");
- }
- case 40 -> {
- model.setWork(8);
- model.setPlay(0);
- model.setResponsibility(2);
- model.setRoad(4);
- model.setEat(4);
- model.setDescription("40岁了,工作适当减少了,但应酬增多了");
- }
- case 43 -> {
- model.setSleep(7);
- model.setWork(7);
- model.setDescription("43岁你感觉体力不支,睡眠增多了,同事已经习惯称呼你为”老胡/老宋“");
- }
- case 55 -> model.setDescription("不知不觉孩子已经大学毕业了,而你,一切都没有变");
- case 58 -> {
- model.setResponsibility(2);
- model.setDescription("孩子结婚了");
- }
- case 59 -> {
- model.setSleep(6);
- model.setDescription("感觉自己变老了,睡眠都减少了");
- }
- case 61 -> {
- model.setEat(2);
- model.setPlay(2);
- model.setRoad(3);
- model.setStupefied(1);
- model.setDescription("孙子出生了,你又开始忙活照看孙子了");
- }
- case 66 -> {
- model.setWork(0);
- model.setLearn(2);
- model.setRoad(3);
- model.setEat(3);
- model.setResponsibility(1);
- model.setDescription("退休了,不上班了,孙子也上幼儿园了,闲暇之余看看书,给自己充充电,或者出门走走,好像也没什么值得你关心的");
- }
- case 68 -> {
- model.setLearn(0);
- model.setRoad(1);
- model.setPlay(0);
- model.setStupefied(3);
- model.setDescription("腿脚不好,走不动了,眼也花了");
- }
- case 71 -> {
- model.setSleep(8);
- model.setStupefied(4);
- model.setDescription("年纪大了,容易犯困");
- }
- case 76 -> {
- model.setSleep(10);
- model.setRoad(0);
- model.setDescription("睡眠越来越多,不愿意动了");
- }
- case 80 -> {
- model.setStupefied(5);
- model.setRoad(2);
- model.setResponsibility(0);
- model.setDescription("很多时候,你会不由自主的去找些什么,可能你也不知道要找什么");
- }
- }
- lifeList.add(model);
- }
- }
- public void printLife(){
- AtomicInteger eatTotal = new AtomicInteger();
- AtomicInteger sleepTotal = new AtomicInteger();
- AtomicInteger playTotal = new AtomicInteger();
- AtomicInteger roadTotal = new AtomicInteger();
- AtomicInteger learnTotal = new AtomicInteger();
- AtomicInteger stupefiedTotal = new AtomicInteger();
- AtomicInteger responsibilityTotal = new AtomicInteger();
- AtomicInteger workTotal = new AtomicInteger();
- AtomicInteger otherTotal = new AtomicInteger();
- lifeList.forEach(e -> {
- // 统计人生用时
- eatTotal.addAndGet(e.getEat() * DaysOfYear);
- sleepTotal.addAndGet(e.getSleep() * DaysOfYear);
- playTotal.addAndGet(e.getPlay() * DaysOfYear);
- roadTotal.addAndGet(e.getRoad() * DaysOfYear);
- learnTotal.addAndGet(e.getLearn() * DaysOfYear);
- stupefiedTotal.addAndGet(e.getStupefied() * DaysOfYear);
- responsibilityTotal.addAndGet(e.getResponsibility() * DaysOfYear);
- workTotal.addAndGet(e.getWork() * DaysOfYear);
- otherTotal.addAndGet(e.getOther() * DaysOfYear);
- // 打印人生清单
- System.out.println(e);
- System.out.println();
- });
- System.out.println();
- // 人生总结报告
- String report = lifeReport(eatTotal,sleepTotal,playTotal,roadTotal,learnTotal,stupefiedTotal,responsibilityTotal,workTotal,otherTotal);
- System.out.println(report);
- }
- private String lifeReport(AtomicInteger eatTotal, AtomicInteger sleepTotal, AtomicInteger playTotal, AtomicInteger roadTotal, AtomicInteger learnTotal, AtomicInteger stupefiedTotal, AtomicInteger responsibilityTotal, AtomicInteger workTotal, AtomicInteger otherTotal) {
- return "您的一生总结如下:" + "\r\n" +
- "您一生总共度过了" + YearOfLife + "年," + "共计" + YearOfLife * DaysOfYear + "天(" + YearOfLife * DaysOfYear * 24 + "小时)" + "\r\n" +
- "您一生总共:" + "\r\n" + "吃饭用时:" + eatTotal + "小时," + "相当于" + eatTotal.get() / 24 + "天" + "\r\n" +
- "睡觉用时:" + sleepTotal + "小时," + "相当于" + sleepTotal.get() / 24 + "天" + "\r\n" +
- "学习用时:" + learnTotal + "小时," + "相当于" + learnTotal.get() / 24 + "天" + "\r\n" +
- "工作用时:" + workTotal + "小时," + "相当于" + workTotal.get() / 24 + "天" + "\r\n" +
- "您一生在娱乐上花费的时间有:" + playTotal + "小时," + "相当于" + playTotal.get() / 24 + "天" + "\r\n" +
- "您一生在路上消耗:" + roadTotal + "小时," + "相当于" + roadTotal.get() / 24 + "天" + "\r\n" +
- "您为家庭付出用时:" + responsibilityTotal + "小时," + "相当于" + responsibilityTotal.get() / 24 + "天" + "\r\n" +
- "您一生处于发呆或神志不清状态用时:" + stupefiedTotal + "小时," + "相当于" + stupefiedTotal.get() / 24 + "天" + "\r\n" +
- "您一生虚度的时光有:" + otherTotal + "小时," + "相当于" + otherTotal.get() / 24 + "天" + "\r\n";
- }
- }
复制代码
编写测试类——LifeTest.java
一生,仅仅是“构造”、“打印”这样简朴,就像“出生”之后统统都安排好了似的——看似很复杂,实在很简朴;看似很久,实在很短暂。
- package com.xfather.muhalgorithm;
- import com.xfather.muhalgorithm.conception.Life;
- import org.junit.jupiter.api.Test;
- import org.springframework.boot.test.context.SpringBootTest;
- /**
- * @Description : 人生生成器测试
- * @Author : 0xfather
- * @Date : 2023/4/21 16:39
- * @Version : 1.0
- */
- @SpringBootTest(classes = LifeTest.class)
- public class LifeTest {
- @Test
- void lifeTest(){
- Life.build().printLife();
- }
- }
复制代码
结果
运行结果:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |