初学者码代码到深夜的快递驿站–JAVA面向过程进行编程
少说话,先献上自己的代码:
import java.util.Random;
import java.util.Scanner;
public class Express{
private static final int A = 10;
static String[] number = new String[A];
static String[] company = new String[A];
static int[] code = new int[A];
static Scanner input = new Scanner(System.in);
@SuppressWarnings("unused")
public static void main(String[] args) {
m:while (true) {
System.out.println("1.快递员");
System.out.println("2.用户");
System.out.println("0.退出系统");
System.out.println("请输入您的选项:");
switch (input.nextInt()) {
case 1:
q:while (true) {
System.out.println("1.添加快递");
System.out.println("2.修改快递");
System.out.println("3.删除快递");
System.out.println("4.查询快递");
System.out.println("0.退出系统");
System.out.println("请输入您的选项:");
int inputNum = input.nextInt();
switch (inputNum) {
case 1:
System.out.println("请输入快递单号:");
String num11 = input.next();
for (int i = 0; i < number.length; i++) {
if (num11.equals(number[i])) {
System.out.println("重复添加快递!");
break q;
}
}
System.out.println("请输入快递的公司:");
String company11 = input.next();
int code11 = new Random().nextInt(900)+100;
for (int j = 0; j < number.length; j++) {
if (number[j]==null) {
number[j] = num11;
code[j] = code11;
company[j] = company11;
System.out.println("添加快递成功");
System.out.print("快递单号:"+num11+"; 快递公司:"+company11+"; 取件码:"+""+code11);
System.out.println();
System.out.println("------------");
break q;
}
}
break;
case 2:
System.out.println("请输入要修改的快递单号");
String next12 = input.next();
for (int i = 0; i < number.length; i++) {
if (next12.equals(number[i])) {
System.out.println("请输入新的快递单号:");
String num12 = input.next();
System.out.println("请输入新的快递公司:");
String company12 = input.next();
int code12 = new Random().nextInt(900)+100;
number[i] = num12;
company[i] = company12;
code[i] = code12;
System.out.println("修改成功");
System.out.print("快递单号:" + num12+"; 快递公司" + company12 + "; 取件码" + code12);
System.out.println();
System.out.println("------------");
break q;
}else {
System.out.println("查无次数据,您输入不正确");
break ;
}
}
break;
case 3:
System.out.println("请输入要删除的快递单号:");
String next13 = input.next();
System.out.println("确定需要删除:1确认 0 取消删除:");
System.out.println("请输入您的选项:");
switch (input.nextInt()) {
case 1:
for (int i = 0; i < number.length; i++) {
if (next13.equals(number[i])) {
number[i] = null;
company[i] = null;
code[i] = 0;
System.out.println("删除快递成功");
break;
}else {
System.out.println("删除失败,没有相同的值");
break;
}
}
break;
default:
System.out.println("删除取消");
break;
}
break;
case 4:
for (int i = 0; i < A; i++) {
if (number[i] != null) {
System.out.print("快递单号:" + number[i] + "; 快递公司:" + company[i] + "; 取件码" + code[i]);
System.out.println();
System.out.println("------------");
}
}
break;
case 0:
System.out.println("退出系统");
break m;
default:
System.out.println("输入有误:退出系统");
break m;
}
break;
}
break;
case 2:
while (true) {
System.out.println("--------------请输取件码------------:");
int next2 = input.nextInt();
System.out.println("确定取件:1.确认 0.取消删除:");
switch (input.nextInt()) {
case 1:
for (int i = 0; i < code.length; i++) {
if (next2 == code[i]) {
number[i] = null;
company[i] = null;
code[i] = 0;
System.out.println("取件成功");
break;
}else {
System.out.println("没有您需要的快递");
break;
}
}
break;
default:
System.out.println("取消取件");
break;
}
break;
}
case 0:
System.out.println("退出系统");
break m;
default:
System.out.println("输入有误:退出系统");
break m;
}
}
}
}
个人总结
对于初学者来讲,少的可怜的代码基础积累完全让自己崩溃,混乱的思维逻辑让自己一次又一次在混乱迷糊中清晰,直到完成代码执行可以运行时,感觉自己还是狠厉害的,此处省略一万字。
感悟和分享
思维逻辑还需要加强,合理使用思维导图等辅助工具很重要,最关键的是要掌握更加简单的编程方式,这需要继续往下面进行钻研!