java_二維數組簡單快遞系統

利用二維數組存儲快遞信息

經過二維數組存儲快遞信息,利用一個臨時數組操做,取件碼經過Random函數自動生成java

快遞員存快遞

快遞員查看全部快遞

快遞員修改快遞

快遞員刪除快遞

用戶取快遞

代碼以下:express

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("快遞號\t\t快遞公司\t\t取件碼");
					for (int n = 0; n < express.length; n++) {
						for (int m = 0; m < express[n].length; m++) {
							System.out.print(express[n][m] + "\t\t");
						}
						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("輸入有誤!");
			}
		}
	}

}
相關文章
相關標籤/搜索