亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Java實現的程序員老黃歷實例

2024-07-14 08:40:37
字體:
來源:轉載
供稿:網友

今早起來,無聊之際把程序員老黃歷用Java實現了一番。

原JS版地址:程序員老黃歷

尊重原作……哈哈哈(連備注都復制的人是不是很惡心的?)

代碼如下:

代碼段1

package com.test; /**  * activities的枚舉  * @author Xiao  *  */ public enum ActivitiesEnum {  ACTIVITIES_1("寫單元測試", "寫單元測試將減少出錯", "寫單元測試會降低你的開發效率", false),  ACTIVITIES_2("洗澡", "你幾天沒洗澡了?", "會把設計方面的靈感洗掉", true),  ACTIVITIES_3("鍛煉一下身體", "", "能量沒消耗多少,吃得卻更多", true),  ACTIVITIES_4("抽煙", "抽煙有利于提神,增加思維敏捷", "除非你活夠了,死得早點沒關系", true),  ACTIVITIES_5("白天上線", "今天白天上線是安全的", "可能導致災難性后果", false),  ACTIVITIES_6("重構", "代碼質量得到提高", "你很有可能會陷入泥潭", false),  ACTIVITIES_7("使用%t", "你看起來更有品位", "別人會覺得你在裝逼", false),  ACTIVITIES_8("跳槽", "該放手時就放手", "鑒于當前的經濟形勢,你的下一份工作未必比現在強", false),  ACTIVITIES_9("招人", "你面前這位有成為牛人的潛質", "這人會寫程序嗎?", false),  ACTIVITIES_10("面試", "面試官今天心情很好", "面試官不爽,會拿你出氣", false),  ACTIVITIES_11("提交辭職申請", "公司找到了一個比你更能干的人,你趕快滾蛋", "鑒于當前的經濟形勢,你的下一份工作未必比現在強", false),  ACTIVITIES_12("申請加薪", "老板今天心情很好", "公司正在考慮裁員", false),  ACTIVITIES_13("晚上加班", "晚上是程序員精神最好的時候", "", true),  ACTIVITIES_14("在妹子面前吹牛", "改善你矮窮挫的形象", "會被識破", true),  ACTIVITIES_15("擼管", "避免緩沖區溢出", true),  ACTIVITIES_16("瀏覽成人網站", "重拾對生活的信心", "你會心神不寧", true),  ACTIVITIES_17("命名變量%v", "", "", false),  ACTIVITIES_18("寫超過%l行的方法", "你的代碼組織的很好,長一點沒關系", "你的代碼將混亂不堪,你自己都看不懂", false),  ACTIVITIES_19("提交代碼", "遇到沖突的幾率是最低的", "你遇到的一大堆沖突會讓你覺得自己是不是時間穿越了", false),  ACTIVITIES_20("代碼復審", "發現重要問題的幾率大大增加", "你什么問題都發現不了,白白浪費時間", false),  ACTIVITIES_21("開會", "寫代碼之余放松一下打個盹,有益健康",false),  ACTIVITIES_22("打DOTA", "你將有如神助", "你會被虐的很慘", true),  ACTIVITIES_23("晚上上線", "晚上是程序員精神最好的時候", "你白天已經筋疲力盡了", false),  ACTIVITIES_24("修復BUG", "你今天對BUG的嗅覺大大提高", "新產生的BUG將比修復的更多", false),  ACTIVITIES_25("設計評審", "設計評審會議將變成頭腦風暴", "人人筋疲力盡,評審就這么過了", false),  ACTIVITIES_26("需求評審", "", "", false),  ACTIVITIES_27("上微博", "今天發生的事不能錯過", "今天的微博充滿負能量", true),  ACTIVITIES_28("上AB站", "還需要理由嗎?", "滿屏兄貴亮瞎你的眼", true),  ACTIVITIES_29("玩FlappyBird", "今天破紀錄的幾率很高", "除非你想玩到把手機砸了", true);  private String name;  private String good;  private String bad;  private Boolean weekend;  ActivitiesEnum(String name, String good, String bad, Boolean weekend){  this.setBad(bad);  this.setGood(good);  this.setName(name);  this.setWeekend(weekend);  }  public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  public String getGood() {  return good;  }  public void setGood(String good) {  this.good = good;  }  public String getBad() {  return bad;  }  public void setBad(String bad) {  this.bad = bad;  }  public Boolean getWeekend() {  return weekend;  }  public void setWeekend(Boolean weekend) {  this.weekend = weekend;  } } 

代碼段2

package com.test; public enum SpecialsEnum {  SPECIALS(2014, "bad", "待在男(女)友身邊", "脫團火葬場,入團保平安。");  private Integer date;  private String type;  private String name;  private String description;  SpecialsEnum (Integer date, String type, String name, String description){  this.setDate(date);  this.setType(type);  this.setName(name);  this.setDescription(description);  }  public Integer getDate() {  return date;  }  public void setDate(Integer date) {  this.date = date;  }  public String getType() {  return type;  }  public void setType(String type) {  this.type = type;  }  public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  public String getDescription() {  return description;  }  public void setDescription(String description) {  this.description = description;  } } 

代碼段3

package com.test; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Random; import org.apache.commons.lang.StringUtils; public class ProgrammerCalendar {  private Integer iday = 0;  private String [] weeks = new String[]{"日", "一","二","三","四","五","六"};  private String [] directions = new String[]{"北方","東北方","東方","東南方","南方","西南方","西方","西北方"};  private String [] tools = new String[]{"Eclipse寫程序", "MSOffice寫文檔", "記事本寫程序", "Windows8", "Linux", "MacOS", "IE", "Android設備", "iOS設備"};  private String [] varNames = new String[]{"jieguo", "huodong", "pay", "expire", "zhangdan", "every", "free", "i1", "a", "virtual", "ad", "spider", "mima", "pass", "ui"};  private String [] drinks = new String[]{"水","茶","紅茶","綠茶","咖啡","奶茶","可樂","鮮奶","豆奶","果汁","果味汽水","蘇打水","運動飲料","酸奶","酒"};  public Integer getIday() {  return iday;  }  public String[] getDirections() {  return directions;  }/**  * 注意:本程序中的“隨機”都是偽隨機概念,以當前的天為種子。  */   public Integer random(Integer daySeed, Integer indexSeed) {  Integer n = daySeed % 11117;  for (int i = 0; i < 100 + indexSeed; i++) {  n = n * n;  n = n % 11117; //11117是個質數  }  return n;  }  public String getTodayString (){  Calendar calendar = Calendar.getInstance();  calendar.setTime(new Date());  return "今天是" + calendar.get(Calendar.YEAR) + "年" + (calendar.get(Calendar.MONTH) + 1)  + "月" + calendar.get(Calendar.DAY_OF_MONTH)  + "日 星期" + weeks[calendar.get(Calendar.DAY_OF_WEEK) - 1];  }  public String star(Integer num) {  String result = "";  int i = 0;  while (i < num) {  result += "★";  i++;  }  while(i < 5) {  result += "☆";  i++;  }  return result;  }  private Boolean isWeekend() {  Locale.setDefault(Locale.CHINA);  Calendar calendar = Calendar.getInstance();  return calendar.get(Calendar.DAY_OF_WEEK) == 1 || calendar.get(Calendar.DAY_OF_WEEK) == 7;  }  public List<ActivitiesEnum> filter() {  List<ActivitiesEnum> thisEnum = new ArrayList<ActivitiesEnum>();  // 周末的話,只留下 weekend = true 的事件  if(isWeekend()) {  for (ActivitiesEnum e : ActivitiesEnum.values()) {  if(e.getWeekend()){  thisEnum.add(e);  }  }  return thisEnum;  }  return new ArrayList<ActivitiesEnum>(Arrays.asList(ActivitiesEnum.values()));  }  public void pickTodaysLuck() {  List<ActivitiesEnum> _activities = filter();  Integer numGood = random(iday, 98) % 3 + 2;  Integer numBad = random(iday, 87) % 3 + 2;  List<Map<String, String>> eventArr = pickRandomActivity(_activities, numGood + numBad);  Integer [] specialSize = pickSpecials();  System.out.println("宜:");  for (int i = 0; i < numGood; i++) {  System.out.println(" " + eventArr.get(i).get("name") + (StringUtils.isNotBlank(eventArr.get(i).get("good")) ? ":" + eventArr.get(i).get("good") : ""));  }  System.out.println("不宜:");  for (int i = 0; i < numBad; i++) {  System.out.println(" " + eventArr.get(numGood + i).get("name") + (StringUtils.isNotBlank(eventArr.get(numGood + i).get("bad")) ? ":" + eventArr.get(numGood + i).get("bad") : ""));  }  }  /**  * 從數組中隨機挑選 size 個  * @param size  * @return  */  private List<ActivitiesEnum> pickRandom(List<ActivitiesEnum> _activities, Integer size) {  List<ActivitiesEnum> result = new ArrayList<ActivitiesEnum>();  for (ActivitiesEnum ae : _activities) {  result.add(ae);  }  for (int i = 0; i < _activities.size() - size; i++) {  int index = random(iday, i) % result.size();  result.remove(index);  }  return result;  }  /**  * 從數組中隨機挑選 size 個  * @param size  * @return  */  private List<String> pickRandomDrinks(Integer size) {  List<String> result = new ArrayList<String>(Arrays.asList(drinks));  for (int i = 0; i < drinks.length - size; i++) {  int index = random(iday, i) % result.size();  result.remove(index);  }  return result;  }  // 枚舉 中隨機挑選 size 個  public List<Map<String, String>> pickRandomActivity(List<ActivitiesEnum> _activities, Integer size) {  List<ActivitiesEnum> picked_events = pickRandom(_activities, size);  List<Map<String, String>> mapList = new ArrayList<Map<String,String>>();  for (int i = 0; i < picked_events.size(); i++) {  mapList.add(parse(picked_events.get(i)));  }  return mapList;  }  /**  * 解析占位符并替換成隨機內容  * @param ae  * @return  */  public Map<String, String> parse(ActivitiesEnum ae) {  Map<String, String> map = new HashMap<String, String>();  map.put("name", ae.getName());  map.put("good", ae.getGood());  map.put("bad", ae.getBad());  if(map.get("name").indexOf("%v") != -1) {  map.put("name", map.get("name").replaceAll("%v", varNames[random(iday, 12) % varNames.length]));  }  if(map.get("name").indexOf("%t") != -1) {  map.put("name", map.get("name").replaceAll("%t", tools[random(iday, 11) % tools.length]));  }  if(map.get("name").indexOf("%t") != -1) {  map.put("name", map.get("name").replaceAll("%l", (random(iday, 12) % 247 + 30) + ""));  }  return map;  }  public Integer [] pickSpecials () {  Integer [] specialSize = new Integer[]{0, 0};  for (SpecialsEnum se : SpecialsEnum.values()) {  if(iday == se.getDate()){  if(se.getType().equals("good")){  specialSize[0]++;  }else{  specialSize[1]++;  }  System.out.println("name:" + se.getName() + " description:" + se.getDescription());  }  }  return specialSize;  }  public ProgrammerCalendar() {  SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");  try {  iday = Integer.parseInt(sdf.format(new Date()));  } catch (Exception e) {  e.printStackTrace();//懶得引用log了  }  }  public static void main(String[] args) {  ProgrammerCalendar hl = new ProgrammerCalendar();  System.out.println("今天是:" + hl.getTodayString());  System.out.println("座位朝向:面向" + hl.directions[hl.random(hl.getIday(), 2) % hl.getDirections().length] + "寫程序,BUG 最少。");  System.out.println("今日宜飲:" + StringUtils.join(hl.pickRandomDrinks(2), ","));  System.out.println("女神親近指數:" + hl.star(hl.random(hl.getIday(), 6) % 5 + 1));  hl.pickTodaysLuck();  } } 

運行結果: 

今天是:今天是2016年9月25日 星期日
座位朝向:面向西方寫程序,BUG 最少。
今日宜飲:可樂,果汁
女神親近指數:★★☆☆☆
宜:
 鍛煉一下身體
 晚上加班:晚上是程序員精神最好的時候
 瀏覽成人網站:重拾對生活的信心
不宜:
 打DOTA:你會被虐的很慘
 上AB站:滿屏兄貴亮瞎你的眼

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩一区二区三区在线免费观看| 国产精品久久国产精品99gif| 亚洲美女在线观看| 亚洲精品大尺度| 最近免费中文字幕视频2019| 成人免费看片视频| 91亚洲国产成人久久精品网站| 美女福利精品视频| 欧美限制级电影在线观看| 国模gogo一区二区大胆私拍| 国产精品免费一区| 欧美国产日韩一区| 国产精品稀缺呦系列在线| 久久久久国色av免费观看性色| 亚洲国产欧美一区二区丝袜黑人| 久久久久久国产| 久久久99免费视频| 亚洲人高潮女人毛茸茸| 色老头一区二区三区在线观看| 一区二区三区视频免费在线观看| 亚洲美女在线看| 亚洲人线精品午夜| 欧美性极品xxxx娇小| 九色成人免费视频| 欧美老女人在线视频| 国产精品嫩草影院久久久| 欧美激情videoshd| 亚洲欧美国产制服动漫| 亚洲欧美一区二区三区情侣bbw| 欧美一级大片在线观看| 91亚洲一区精品| 精品露脸国产偷人在视频| 日韩一二三在线视频播| 国产日韩欧美夫妻视频在线观看| 国产亚洲aⅴaaaaaa毛片| 最近2019中文字幕一页二页| 91精品综合久久久久久五月天| 欧洲成人午夜免费大片| 日韩一二三在线视频播| 国产精品第2页| 欧美精品久久一区二区| 亚洲另类欧美自拍| 久久久久成人精品| 精品偷拍一区二区三区在线看| 久久精品视频播放| 91九色国产社区在线观看| 国产国语videosex另类| 97视频在线观看免费高清完整版在线观看| 午夜精品在线视频| 亚洲色图在线观看| 亚洲国产欧美在线成人app| 亚洲免费一级电影| 久久在线免费观看视频| 欧美xxxx做受欧美| 精品电影在线观看| 国产精品爽爽爽爽爽爽在线观看| 日韩hd视频在线观看| 国产精选久久久久久| 中文字幕日韩欧美在线| 欧美日韩亚洲一区二区| 黄色成人在线免费| 亚洲尤物视频网| 国产自产女人91一区在线观看| 日韩成人在线电影网| 欧美中文在线字幕| 伊人久久综合97精品| 久久久久久久久久亚洲| 欧美性理论片在线观看片免费| 欧美日韩国产第一页| 日韩性xxxx爱| 国产精品久久久久av免费| 久久国产精品久久久久久| 欧洲一区二区视频| 久久精品成人欧美大片古装| 国产精品视频一| 日韩电影在线观看永久视频免费网站| 一区二区三区回区在观看免费视频| 日韩极品精品视频免费观看| 欧美性生活大片免费观看网址| 久热精品视频在线| 在线观看日韩专区| 91在线免费网站| 91色中文字幕| 国产综合久久久久久| 久久视频在线视频| 久久久久久久久网站| 久久精品视频亚洲| 欧美激情视频一区二区三区不卡| 精品成人乱色一区二区| 久久国产色av| xxxxx成人.com| 日韩中文字幕第一页| 日本精品久久久久久久| 大胆欧美人体视频| 欧美电影免费观看高清完整| 91福利视频网| 亚洲国产天堂久久综合| xvideos国产精品| 国产91精品黑色丝袜高跟鞋| 中文字幕日韩av电影| 精品亚洲国产成av人片传媒| 亚洲欧美国产精品久久久久久久| 欧美整片在线观看| 精品国产一区二区三区四区在线观看| 国产69精品99久久久久久宅男| 色伦专区97中文字幕| 欧美精品videofree1080p| 欧美—级a级欧美特级ar全黄| 在线激情影院一区| 国产91精品高潮白浆喷水| 欧美性生交大片免费| 欧美成aaa人片在线观看蜜臀| 中文字幕国产亚洲| 欧美亚洲成人xxx| 亚洲午夜女主播在线直播| 日韩在线观看网址| 91精品久久久久久综合乱菊| 国产精品美女主播| 国产精品7m视频| 亚洲激情中文字幕| 欧美日韩在线视频一区二区| 午夜精品福利视频| 日本精品视频网站| 欧美激情videos| 亚洲美女视频网| 国产日产欧美精品| 亚洲国产精品悠悠久久琪琪| 欧美大成色www永久网站婷| 国外成人免费在线播放| 亚洲久久久久久久久久久| 成人av色在线观看| 91精品91久久久久久| 97香蕉久久超级碰碰高清版| 91成品人片a无限观看| 国产精品视频最多的网站| 中文字幕亚洲欧美日韩高清| 国产午夜精品麻豆| 国产99久久精品一区二区永久免费| 欧美精品videosex牲欧美| 久国内精品在线| 国产女人精品视频| 成人亲热视频网站| 国产精品免费小视频| 91亚洲午夜在线| 国产精品视频白浆免费视频| 国产精品美女在线| 久久久精品电影| 国产精品黄色av| 日韩中文字幕在线观看| 国产精品777| 久久久久久国产精品久久| 国产+成+人+亚洲欧洲| 久久成人这里只有精品| 亚洲激情视频网站| 91精品免费看| 欧美视频中文在线看| 日日噜噜噜夜夜爽亚洲精品| 亚洲国产中文字幕久久网| 久久久久久久久久国产精品| 91国产视频在线播放| 亚洲欧美激情另类校园| 成人黄在线观看| 91免费国产视频| 亚洲精品一区二区三区婷婷月|