忆当年之Java流程控制
作者:互联网
import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Scanner; /** * 用到技术: * 流程控制语句 * 集合 * 静态方法 * * @author 666先生的救赎 * */ public class HelloWorld { //日记集合 static Map<String, Diary> diarys = new HashMap<>(); //用户信息 static Map<String, String> users = new HashMap<>(); //所有用户的日记信息 static Map<String, Map<String, Diary>> allDiary = new HashMap<>(); public static void main(String[] args) { boolean isClose = true; Scanner scanner = new Scanner(System.in); init(); do { System.out.println("欢迎进入日记系统..."); System.out.println("请输入账户:"); String username = scanner.next(); while(!users.containsKey(username)) { System.out.println("账号 " + username + "不存在!请重新输入!"); username = scanner.next(); } System.out.println("请输入密码:"); String password = scanner.next(); String userPassword = users.get(username); while(!userPassword.equals(password)) { System.out.println("账号 " + username + " 密码不正确!"); System.out.println("请重新输入密码:"); password = scanner.next(); } diarys = allDiary.get(username); while(isClose) { System.out.println("请选择功能:"); System.out.println(" 1.记录日记"); System.out.println(" 2.查看日记"); System.out.println(" 3.退出系统"); String flag = scanner.next(); if(flag.equals("1")) { Diary diary = new Diary(); System.out.println("请输入标题:"); String title = scanner.next(); while(isContain(diarys, title)) { System.out.println("请重新输入标题:"); title = scanner.next(); } diary.setTitle(title); System.out.println("请输入类型:"); String type = scanner.next(); diary.setType(type); System.out.println("请输入内容:"); String content = scanner.next(); diary.setContent(content); diary.setAuther(username); diary.setDateTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒"))); diarys.put(title, diary); allDiary.put(username, diarys); System.out.println("保存成功!"); } else if(flag.equals("2")) { Iterator<Map.Entry<String, Diary>> iterator = diarys.entrySet().iterator(); while(iterator.hasNext()) { Map.Entry<String, Diary> next = iterator.next(); System.out.println("标题:" + next.getKey() + "\n内容:" + next.getValue()); } } else if(flag.equals("3")) { scanner.close(); isClose = false; System.out.println("退出系统..."); } else { System.out.println("请按要求输入!!!"); } } }while(isClose); } /** * 标题是否已存在 * @param map * @param title * @return */ private static boolean isContain(Map<String, Diary> map, String title) { boolean contain = map.containsKey(title); if(contain) { System.out.println("标题已存在!!!"); } return contain; } /** * 初始化一些数据 */ private static void init() { //初始化用户信息 users.put("maxinhai", "970529"); users.put("admin", "admin"); users.put("666先生的救赎", "970529"); //初始化用户日记数据 Map<String, Diary> user1 = new HashMap<>(); user1.put("测试", new Diary("测试", "测试", "测试内容", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "maxinhai")); user1.put("测试1", new Diary("测试1", "测试1", "测试内容1", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "maxinhai")); user1.put("测试2", new Diary("测试2", "测试2", "测试内容2", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "maxinhai")); Map<String, Diary> user2 = new HashMap<>(); user2.put("测试", new Diary("测试", "测试", "测试内容", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "admin")); user2.put("测试1", new Diary("测试1", "测试1", "测试内容1", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "admin")); user2.put("测试2", new Diary("测试2", "测试2", "测试内容2", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "admin")); Map<String, Diary> user3 = new HashMap<>(); user3.put("测试", new Diary("测试", "测试", "测试内容", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "666先生的救赎")); user3.put("测试1", new Diary("测试1", "测试1", "测试内容1", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "666先生的救赎")); user3.put("测试2", new Diary("测试2", "测试2", "测试内容2", LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY年MM月dd日 HH时mm分ss秒")), "666先生的救赎")); allDiary.put("maxinhai", user1); allDiary.put("admin", user2); allDiary.put("666先生的救赎", user3); } }
public class Diary { private String title; private String type; private String content; private String dateTime; private String auther; public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getType() { return type; } public void setType(String type) { this.type = type; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public String getDateTime() { return dateTime; } public void setDateTime(String dateTime) { this.dateTime = dateTime; } public String getAuther() { return auther; } public void setAuther(String auther) { this.auther = auther; } @Override public String toString() { return "标题:" + title + " 日记类型:" + type + " 日记内容:" + content + " 记录时间:" + dateTime + " 记录者:" + auther; } public Diary(String title, String type, String content, String dateTime, String auther) { super(); this.title = title; this.type = type; this.content = content; this.dateTime = dateTime; this.auther = auther; } public Diary() {} }
程序效果:
欢迎进入日记系统... 请输入账户: admi 账号 admi不存在!请重新输入! admin 请输入密码: admin 请选择功能: 1.记录日记 2.查看日记 3.退出系统 1 请输入标题: 每日一记 请输入类型: 日记 请输入内容: 今天没出门在上班 保存成功! 请选择功能: 1.记录日记 2.查看日记 3.退出系统 2 标题:测试2 内容:标题:测试2 日记类型:测试2 日记内容:测试内容2 记录时间:2020年03月13日 21时41分25秒 记录者:admin 标题:测试 内容:标题:测试 日记类型:测试 日记内容:测试内容 记录时间:2020年03月13日 21时41分25秒 记录者:admin 标题:测试1 内容:标题:测试1 日记类型:测试1 日记内容:测试内容1 记录时间:2020年03月13日 21时41分25秒 记录者:admin 标题:每日一记 内容:标题:每日一记 日记类型:日记 日记内容:今天没出门在上班 记录时间:2020年03月13日 21时42分12秒 记录者:admin 请选择功能: 1.记录日记 2.查看日记 3.退出系统 4 请按要求输入!!! 请选择功能: 1.记录日记 2.查看日记 3.退出系统 3 退出系统...
标签:Java,String,流程,System,当年,测试,println,日记,out 来源: https://www.cnblogs.com/mxh-java/p/12489259.html