快乐E栈项目实战第一阶段

快乐E栈项目实战第一阶段


简单的快递E栈功能,实现角色切换、存快递、删快递、修改快递、查询快递、取快递功能,目前根据第一阶段所学主要使用流程控制进行处理:

package happyEStack;

import java.util.Random;
import java.util.Scanner;

public class happyEStack {

	static String g_courierNum = "";
	static int g_takeCode = 0;
	static String g_companyName = "";
	static Scanner g_scanner = new Scanner(System.in);
	
	public static void main(String[] args) {
		while(true) {
			//1、角色切换
			System.out.println("=====欢迎使用快乐e栈快递柜=====");
			System.out.println("请输入您的身份:1-快递员,2-用户");
			
			int identity = getUserIntInput(g_scanner);
			if(identity != 1 && identity != 2) {
				System.out.println("您输入的身份类型错误");
				continue;
			}
			
			if(1 == identity) {
				System.out.println("请选择操作:1-存快递 2-删除快递 3-修改快递信息 4-查看所有快递");
				int option = getUserIntInput(g_scanner);
				
				switch(option) {
				case 1:  //2、存快递
					saveCourier();
					break;
				case 2:  //3、删除快递
					delCourier();
					break;
				case 3:  //4、修改快递
					modifyCourier();
					break;
				case 4:  //5、查看所有快递
					queryCourier();
					break;
				default:
					System.out.println("您选择的操作错误");
					continue;
				}
			} else if(2 == identity) {
				//6、取快递
				takeCourier();
			}
		}
	}
	
	/**
	 * 获取用户输入的Int类型值并判断
	 * 参数:Scanner对象
	 * 返回值:输入正确返回输入值,输入错误进行打印并返回-1
	 */
	public static int getUserIntInput(Scanner scanner) {
		if(scanner.hasNextInt()) {
			return scanner.nextInt();
		} else {
			System.out.println("你输入的信息错误");
		}
		
		return -1;
	}
	
	/**
	 * 获取用户输入的String类型值并判断
	 * 参数:Scanner对象
	 * 返回值:输入正确返回输入值,输入错误返回null
	 */
	public static String getUserStringInput(Scanner scanner) {
		if(scanner.hasNext()) {
			return scanner.next();
		} else {
			System.out.println("你输入的信息错误");
		}
		
		return null;
	}
	
	/**
	 * 数据初始化
	 */
	public static void init() {
		g_courierNum = "";
		g_companyName = "";
		g_takeCode = 0;
	}
	
	/**
	 * 存快递相关操作
	 */
	public static void saveCourier() {
		System.out.println("请输入快递单号:");
		g_courierNum = getUserStringInput(g_scanner);
		System.out.println("请输入公司名称:");
		g_companyName = getUserStringInput(g_scanner);
		g_takeCode = new Random().nextInt(900) + 100;
		System.out.println("快递已存入,取件码是:"+g_takeCode);
	}

	/**
	 * 删除快递相关操作
	 */
	public static void delCourier() {
		System.out.println("请输入要删除的快递单号:");
		String courierNumDel = getUserStringInput(g_scanner);
		if(courierNumDel.equals(g_courierNum)) {
			System.out.println("删除成功");
			init();
		} else {
			System.out.println("未找到快递");
		}
	}
	
	/**
	 * 修改快递相关操作
	 */
	public static void modifyCourier() {
		System.out.println("请输入要修改的快递单号:");
		String courierNumOld = getUserStringInput(g_scanner);
		if(courierNumOld.equals(g_courierNum)) {
			System.out.println("请输入新的快递单号:");
			g_courierNum = getUserStringInput(g_scanner);
			System.out.println("请输入新的公司名称:");
			g_companyName = getUserStringInput(g_scanner);
			System.out.println("修改成功");
		} else {
			System.out.println("未找到该快递");
		}
	}
	
	/**
	 * 查看快递相关操作
	 */
	public static void queryCourier() {
		System.out.println("所有快递信息如下:");
		System.out.println("快递单号\t"+"公司名称\t"+"取件码\t");
		System.out.println(g_courierNum+"\t"+g_companyName+"\t"+g_takeCode+"\t");
	}
	
	/**
	 * 取快递相关操作
	 */
	public static void takeCourier() {
		System.out.println("请输入取件码:");
		int takeCodeGet = getUserIntInput(g_scanner);
		if(takeCodeGet == g_takeCode) {
			System.out.println("取件成功");
			init();
		} else {
			System.out.println("未找到该快递");
		}
	}
}

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

昵称系统有问题

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值