今天将昨天分成的任务达成了三个,还剩最后一个。其中遇到的问题封装不会,生成随机数不会。
代码如下:
import java.util.Random;
import java.util.Scanner;
public class work01 {
public static Scanner input = new Scanner(System.in);
public static String[] numberArr=new String[100];
public static String[] companyArr=new String[100];
public static int[] codeArr=new int[100];
public static int index = 0;//有多少个快递
public static Random random = new Random();
public static void main(String[] args) {
while(true) {
startMenu();
}
}
public static void startMenu() {
// 展示菜单
System.out.println("=======欢迎使用新职课快递柜======");
System.out.print("请输入您的身份:1快递员 2用户");
do {
int id = input.nextInt();
if(id==1) {//快递员
deliverymanMenu();
break;
}else if(id==2) {//用户
userMenu();
break;
}else {
System.out.println("选择有误,请重新输入");
}
}while(true);
}
//--------------------------------------------------------------------------
public static void userMenu() {
System.out.print("请输入取件码:");
int code = input.nextInt();
}
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
public static void deliverymanMenu() {
System.out.print("请选择操作:1存快递 2删除快递 3修改快递信息 4查看所有快递");
int id = input.nextInt();
if(id==1){
saveExpress();
}else if(id==2) {
System.out.println("请输入要删除的快递单号");
String number=input.next();
int delIndex=findByNumber(number);
if(delIndex==-1) {
System.out.println("未找到快递");
}else {
//删除
if(delIndex!=numberArr.length-1) {
for(int i = delIndex;i<index;i++) {
numberArr[i]=numberArr[i+1];
companyArr[i]=companyArr[i+1];
codeArr[i]=codeArr[i+1];
}
}
index--;
System.out.println("删除成功");
}
}else if(id==3) {
System.out.println("修改快递信息");
}else if(id==4) {
printAll();
}
}
//--------------------------------------------------------------------------
public static void printAll() {
System.out.println("----------这是所有的快递信息-----------");
System.out.println("快递单号\t快递公司\t取件码");
for(int i = 0;i<index;i++) {
System.out.println(numberArr[i]+"\t"+companyArr[i]+"\t"+codeArr[i]);
}
}
//--------------------------------------------------------------------------
public static int findByNumber(String number) {
for(int i = 0;i<index;i++) {
if(numberArr[i].equals(number)) {
return i;
}
}
return -1;
}
//--------------------------------------------------------------------------
public static void saveExpress() {
System.out.println("请输入快递单号");
String number=input.next();
System.out.println("请输入公司名称");
String company=input.next();
int code =0;
numberArr[index]=number;
companyArr[index]=company;
do {
code =random.nextInt(900)+100;
}while(isExist(code));
codeArr[index]=code;
index++;
System.out.println("取件码是:"+code);
}
//--------------------------------------------------------------------------
public static void delExpress() {
}
//--------------------------------------------------------------------------
public static boolean isExist(int code) {
for(int i = 0;i<index;i++) {
if(codeArr[i]==code) {
return true;
}
}
return false;
}
}