JavaEE实战班第十一天

今天完成了任务的最后一个模块,整个任务全部完成并可以使用。发现其中有很多没学过的东西。

第一次完成这么庞大的任务,上上下下封装有的时候甚至找不到想改的模块。而后学习了第七节,对未来就业观念有了一定的改观。

package day09;
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) {
        int id = startMenu();
        if(id==0) {
            return;
        }
        }
    }
    public static int startMenu() {
        // 展示菜单
                System.out.println("=======欢迎使用新职课快递柜======");
                System.out.print("请输入您的身份:1快递员 2用户 0退出");
                int id = 0;
                do {
                 id = input.nextInt();
                
                if(id==1) {//快递员
                    deliverymanMenu();
                    break;
                }else if(id==2) {//用户
                    userMenu();
                    break;
                }else if(id==0){
                    System.out.println("谢谢使用");
                    return 0;
                }else {
                    System.out.println("选择有误,请重新输入");
                }
                }while(true);
                return id;
    }
    //--------------------------------------------------------------------------
    public static void userMenu() {
        System.out.print("请输入取件码:");
        int code = input.nextInt();
        int codeIndex = isExist(code);
        if(codeIndex==-1) {
            System.out.print("未找到快递:");
        }else {
            del(codeIndex);
            System.out.print("取件成功:");
        }
    }
    //--------------------------------------------------------------------------
    
    //--------------------------------------------------------------------------
    public static void deliverymanMenu() {
        System.out.print("请选择操作:1存快递 2删除快递 3修改快递信息 4查看所有快递");
        int id = input.nextInt();
        if(id==1){
            saveExpress();
        }else if(id==2) {
            
            delExpress();
            
        }else if(id==3) {
            System.out.println("请输入要修改的快递信息");
            String number = input.next();
            int updateIndex=findByNumber(number);
            if(updateIndex==-1) {
                System.out.println("未找到快递");
            }else {
                System.out.println("请输入新的快递信息");
                 number = input.next();
                System.out.println("请输入新的公司名称");
                String company = input.next();
                numberArr[updateIndex]=number;
                companyArr[updateIndex]=company;
                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)!=-1);
        codeArr[index]=code;
        index++;
        System.out.println("取件码是:"+code);
    }
//--------------------------------------------------------------------------
public static void delExpress() {
    System.out.println("请输入要删除的快递单号");
    String number=input.next();
    int delIndex=findByNumber(number);
    if(delIndex==-1) {
        System.out.println("未找到快递");
    }else {
        //删除
        del(delIndex);
        System.out.println("删除成功");}
    }
//--------------------------------------------------------------------------
    public static void del(int delIndex) {
        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--;
    }
//--------------------------------------------------------------------------
    public static int isExist(int code) {
        for(int i = 0;i<index;i++) {
            if(codeArr[i]==code) {
                return i;
            }
        }
        return -1;
    
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值