April 27, 2022

重构前(水果店管理系统)

// 水果店管理系统 // 实现水果店的增删改查 // TODO 显示全表 // TODO 修改水果库存 // TODO 修改水果价格 // TODO 添加水果(增) // TODO 退出系统 // TODO 各个欢迎和交互语句 import java.util.Scanner; public class 水果店管理系统 { // 水果店管理系统 // 实现水果店的增删改查 // TODO 显示全表 // TODO 修改水果库存 // TODO 修改水果价格 // TODO 添加水果(增) // TODO 退出系统 // TODO 各个欢迎和交互语句 public static void main(String[] args) { String[][] 表头; // TODO 创建初始水果信息 表头 = new String[][]{ {"水果名称", "水果价格(元/每斤)", "水果库存(斤)"}, {"苹果", "3.5", "10"}, {"香蕉", "2.5", "20"}, {"西瓜", "3.5", "30"}, {"荔枝", "5.5", "40"}, {"梨", "2.5", "50"}, }; // TODO 修改水果信息 (输入后)查找,修改,删除,输出 操作选择的while语句 Scanner cin = new Scanner(System.in); int 操作选择 = 0; while (true) { // TODO 欢迎语句 System.out.println(); // 格式化 System.out.println("请选择操作:"); // 交互 // System.out.print("1.查找" + "\t" + "2.修改" + "\t" + "3.删除" + "\t" + "4.输出" + "\t" + "5.退出" + "\n"); System.out.print("1.查找" + "\t" + "2.增加" + "\t" + "3.修改" + "\t" + "4.删除" + "\t" + "5.输出(此功能优先选择选项7)" + "\t" + "6.退出" + "\t" + "7.只读模式打开表格" + "\n"); 操作选择 = cin.nextInt(); if (操作选择 == 1) { System.out.println("请输入要查找的水果名称:(输入0返回主菜单)"); String 查找水果名称 = cin.next(); if (查找水果名称.equals("0")) { continue; } // TODO 查找水果信息 int for计数器 = 0; for (int i = 0; i < 表头.length; i++) { // 行 if (表头[i][0].equals(查找水果名称)) { // .equals() 方法用于比较两个字符串是否相等。 == 比较的是两个对象的地址 -> https://www.cnblogs.com/Whichzzz/p/15684836.html(==与equals的区别) System.out.println("水果名称:" + 表头[i][0]); System.out.println("水果价格:" + 表头[i][1]); System.out.println("水果库存:" + 表头[i][2]); for计数器++; } } if (for计数器 == 0) { System.out.println("查找失败!没有这个数据"); } } if (操作选择 == 2) { System.out.println("请输入要添加的水果名称:(输入0返回主菜单)"); String 添加水果名称 = cin.next(); if (添加水果名称.equals("0")) { continue; } System.out.println("请输入要添加的水果价格:(输入0返回主菜单)"); String 添加水果价格 = cin.next(); if (添加水果价格.equals("0")) { continue; } System.out.println("请输入要添加的水果库存:(输入0返回主菜单)"); String 添加水果库存 = cin.next(); if (添加水果库存.equals("0")) { continue; } // TODO 添加水果信息(未完成) String[][] 新表头 = new String[表头.length + 1][表头[0].length]; for (int i = 0; i < 表头.length; i++) { for (int j = 0; j < 表头[0].length; j++) { 新表头[i][j] = 表头[i][j]; } } // 遍历输出新表头 for (int i = 0; i < 新表头.length; i++) { for (int j = 0; j < 新表头.length; j++) { System.out.println(新表头[i][j]); } } System.out.println("操作完成"); } if (操作选择 == 3) { System.out.println("请输入要修改的水果名称:(输入0返回主菜单)"); String 修改水果名称 = cin.next(); if (修改水果名称.equals("0")) { continue; } System.out.println("请输入要修改的水果价格:(输入0返回主菜单)"); String 修改水果价格 = cin.next(); if (修改水果价格.equals("0")) { continue; } System.out.println("请输入要修改的水果库存:"); String 修改水果库存 = cin.next(); // TODO 修改水果信息 for (int i = 0; i < 表头.length; i++) { if (表头[i][0].equals(修改水果名称)) { 表头[i][1] = 修改水果价格; 表头[i][2] = 修改水果库存; } } System.out.println("操作完成"); } if (操作选择 == 4) { System.out.println("请输入要删除的水果名称:"); String 删除水果名称 = cin.next(); // TODO 删除水果信息 for (int i = 0; i < 表头.length; i++) { if (表头[i][0].equals(删除水果名称)) { 表头[i][0] = ""; 表头[i][1] = ""; 表头[i][2] = ""; } } } if (操作选择 == 5) { // TODO 输出水果信息 for (int i = 0; i < 表头.length; i++) { System.out.println("水果名称:" + 表头[i][0]); System.out.println("水果价格:" + 表头[i][1]); System.out.println("水果库存:" + 表头[i][2]); } } if (操作选择 == 6) { // TODO 退出系统 break; } if (操作选择 == 7) { // TODO 查看所有水果信息 for (int i = 0; i < 表头.length; i++) { System.out.println("水果名称:" + 表头[i][0]); System.out.println("水果价格:" + 表头[i][1]); System.out.println("水果库存:" + 表头[i][2]); System.out.println("----------------------------------"); } } } } }
Read more
April 27, 2022

重构后(水果店管理系统)

/** * @author L1653 水果店管理 分public. * // TODO 显示全表 * // TODO 修改水果库存 * // TODO 修改水果价格 * // TODO 添加水果(增) * // TODO 退出系统 * // TODO 各个欢迎和交互语句 */ import java.util.Scanner; /** * @author L1653 水果店管理 分public. * // TODO 显示全表 * // TODO 修改水果库存 * // TODO 修改水果价格 * // TODO 添加水果(增) * // TODO 退出系统 * // TODO 各个欢迎和交互语句 */ public class S09E06重构类 { public static void main(String[] args) { String[][] 表头; 表头 = new String[][]{ {"水果", "数量", "单价"}, {"苹果", "10", "5.5"}, {"香蕉", "20", "3.5"}, {"西瓜", "30", "4.5"}, {"葡萄", "40", "6.5"}, {"荔枝", "50", "7.5"}, {"柠檬", "60", "8.5"}, {"梨", "70", "9.5"}, {"桃", "80", "10.5"}, {"柚子", "90", "11.5"}, {"桔子", "100", "12.5"}, }; // TODO 修改水果信息 (输入后)查找,修改,删除,输出 操作选择的while语句 Scanner cin = new Scanner(System.in); while (true) { // TODO 显示全表 显示表格(表头); System.out.println("请选择操作:"); /** System.out.println("1.查找"); System.out.println("2.修改"); System.out.println("3.删除"); System.out.println("4.输出"); System.out.println("5.退出"); */ System.out.println("1.查找" + "\t" + "2.修改"+ "\t" + "3.删除"+ "\t" + "4.输出"+ "\t" + "5.退出"); int 选择 = cin.nextInt(); switch (选择) { case 1: System.out.println("请输入要查找的水果名称:"); String 水果名称 = cin.next(); 查找水果(水果名称, 表头); break; case 2: System.out.println("请输入要修改的水果名称:"); String 水果名称2 = cin.next(); System.out.println("请输入要修改的数量:"); int 数量 = cin.nextInt(); System.out.println("请输入要修改的单价:"); double 单价 = cin.nextDouble(); 修改水果(水果名称2, 数量, 单价, 表头); break; case 3: System.out.println("请输入要删除的水果名称:"); String 水果名称3 = cin.next(); 删除水果(水果名称3, 表头); break; case 4: 输出水果(表头); break; case 5: System.out.println("退出"); return; default: System.out.println("输入错误,请重新输入"); break; } } } // 水果店管理系统 // 实现水果店的增删改查 public static void 查找水果(String 水果名称, String[][] 表头) { /* TODO 查找水果 */ for (int i = 1; i < 表头.length; i++) { if (表头[i][0].equals(水果名称)) { System.out.println("水果名称:" + 表头[i][0]); System.out.println("数量:" + 表头[i][1]); System.out.println("单价:" + 表头[i][2]); } } } public static void 修改水果(String 水果名称, int 数量, double 单价, String[][] 表头) { // TODO 修改水果 for (int i = 1; i < 表头.length; i++) { if (表头[i][0].equals(水果名称)) { 表头[i][1] = String.valueOf(数量); 表头[i][2] = String.valueOf(单价); } } } public static void 删除水果(String 水果名称, String[][] 表头) { // TODO 删除水果 for (int i = 1; i < 表头.length; i++) { if (表头[i][0].equals(水果名称)) { 表头[i][0] = ""; 表头[i][1] = ""; 表头[i][2] = ""; } } } public static void 输出水果(String[][] 表头) { // TODO 输出水果 for (int i = 1; i < 表头.length; i++) { if (!表头[i][0].equals("")) { System.out.println("水果名称:" + 表头[i][0]); System.out.println("数量:" + 表头[i][1]); System.out.println("单价:" + 表头[i][2]); } } } public static void 显示表格(String[][] 表头) { // TODO 显示表格 for (int i = 0; i < 表头.length; i++) { for (int j = 0; j < 表头[i].length; j++) { System.out.print(表头[i][j] + "\t"); // System.out.println(); } System.out.println(); } } }
Read more