java_二维数组简单快递系统
时间:2022-07-26
本文章向大家介绍java_二维数组简单快递系统,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
利用二维数组存储快递信息
通过二维数组存储快递信息,利用一个临时数组操作,取件码通过Random函数自动生成
快递员存快递
快递员查看所有快递
快递员修改快递
快递员删除快递
用户取快递
代码如下:
public class Demo1 {
public static void main(String[] args) {
String express[][] = new String[0][3]; //定义快递二维数组
String[][] arr; // 定义临时数组
while (true) {
System.out.println("==欢迎使用XXX快递柜===");
System.out.println("请输入你的身份:1-快递员,2-用户");
Scanner s = new Scanner(System.in);
int i = s.nextInt();
if (i == 1) {
System.out.println("请选择操作:1-存快递 2-删除快递 3-修改快递信息 4-查看所有快递");
int j = s.nextInt();
switch (j) {
// 1-存快递
case 1:
System.out.println("请输入快递单号:");
String num = s.next();
System.out.println("请输入公司名称:");
String name = s.next();
Random ran = new Random();
String r = Integer.toString(ran.nextInt(1000));
System.out.println("快递已存入,取件码是:" + r);
arr = new String[express.length + 1][3];
for (int n = 0; n < express.length; n++) {
System.arraycopy(express, 0, arr, 0, express.length);
}
arr[arr.length - 1] = new String[] { num, name, r };
express = arr;
break;
// 2-删除快递
case 2:
arr = new String[express.length - 1][3];
System.out.println("请输入要删除的快递单号:");
String l = s.next();
for (int n = 0; n < express.length; n++) {
if (express[n][0].equals(l)) {
System.arraycopy(express, 0, arr, 0, n);
System.arraycopy(express, n + 1, arr, n, arr.length - n);
express = arr;
System.out.println("删除成功");
break;
} else if (n == express.length - 1) {
System.out.println("未找到快递");
break;
}
}
break;
//3-修改快递信息
case 3:
System.out.println("请输入要修改的快递单号:");
String o = s.next();
for (int n = 0; n < express.length; n++) {
if (express[n][0].equals(o)) {
System.out.println("请输入新的快递单号:");
String newnum = s.next();
express[n][0] = newnum;
System.out.println("请输入新的快递公司:");
String newname = s.next();
express[n][1] = newname;
System.out.println("修改成功");
} else if (i == express.length - 1) {
System.out.println("未找到快递");
break;
}
}
break;
// 4-查看所有快递
case 4:
System.out.println("----------------全部快递---------------");
System.out.println("快递号tt快递公司tt取件码");
for (int n = 0; n < express.length; n++) {
for (int m = 0; m < express[n].length; m++) {
System.out.print(express[n][m] + "tt");
}
System.out.println();
}
break;
default:
System.out.println("输入有误!");
}
// 用户取件部分
} else if (i == 2) {
arr = new String[express.length - 1][3];
System.out.println("请输入取件码:");
String p = s.next();
for (int n = 0; n < express.length; n++) {
if (express[n][2].equals(p)) {
System.arraycopy(express, 0, arr, 0, n);
System.arraycopy(express, n + 1, arr, n, arr.length - n);
express = arr;
System.out.println("取件成功");
break;
} else if (n == express.length - 1) {
System.out.println("未找到快递");
break;
}
}
} else {
System.out.println("输入有误!");
}
}
}
}
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Python数据可视化入门:使用Matplotlib绘图
- 有了音乐下载器,怎么能没有音乐播放器呢,打造自己的音乐播放器
- 七夕节到了,单身狗程序员要对自己好点,用代码送自己点安慰
- 面向对象视角下的前端工程体系
- 使用 Python破解大众点评字体加密(SVG反爬虫)
- Python爬虫练习:爬取高清4K桌面壁纸
- 爬取B站18000条《黑神话:悟空》实机演示弹幕,做成词云
- Python爬虫实战:自动化登录网站,爬取商品数据
- 符合自己的工作难找?取招聘网站数据,让你找到心仪的工作
- 虽然现在有可以去码的软件了,可视频是如何自动跟踪打码的?
- Python爬取NBA虎扑球员数据
- 发现一个好看的手机壁纸网站,撸代码的手已经饥渴难耐了
- 手把手用python教你拿即时的卫星影像装饰你的桌面
- PyCharm2019亲测破解方式
- :: 是什么语法?