zoukankan      html  css  js  c++  java
  • dvd开发小程序

    package dvdManager8;

    import java.util.Scanner;

    public class DvdSystem8 {
    static String[][] dvd = new String[7][4];
    static Scanner scan = new Scanner(System.in);
    static double price=1.3;//日租单价
    public static void main(String[] args) {
    /**
    * 名字 是否借出 借出日期 借出次数
    */
    dvd[0][0] = "爱情公寓";
    dvd[0][1] = "1";// 1表示借出 0表示未借出
    dvd[0][2] = "2";// 目前只支持当月借还 2号
    dvd[0][3] = "3";// 借出次数

    dvd[1][0] = "重庆森林";
    dvd[1][1] = "0";// 1表示借出 0表示未借出
    dvd[1][2] = "";// 借出时间 目前只支持当月借还 2号
    dvd[1][3] = "3";// 借出次数

    dvd[2][0] = "屌丝男士";
    dvd[2][1] = "1";// 1表示借出 0表示未借出
    dvd[2][2] = "3";// 借出时间 ,目前只支持当月借还 3号
    dvd[2][3] = "7";// 借出次数
    int input;// 接受键盘输入,指导用户输入0,回到主界面

    do { // 使用do while 语句控制,回到主界面
    System.out.println("======dvd管理系统=======");
    System.out.println("1.dvd新增");
    System.out.println("2.dvd展示");
    System.out.println("3.dvd删除");
    System.out.println("4.dvd修改");
    System.out.println("5.dvd借出");
    System.out.println("6.dvd归还");
    System.out.println("7.退出当前系统");
    System.out.println("请输入功能编号:");

    int num = scan.nextInt();// 接受用户输入,选择指定功能编码
    switch (num) {
    case 1:
    System.out.println(" =====新增dvd信息====");
    System.out.println("请输入dvd名称:");
    String dvdName = scan.next();// 接受用户输入的dvd名称
    boolean isFull = false;// 定义一个变量,初值为false
    for (int i = 0; i < dvd.length; i++) {
    String[] dvdII = dvd[i];// 将每一个一维数组赋值给dvdII
    if (dvdII[0] == null) {
    isFull = true;// 将isFull设置为true,判断语句是否进入
    dvdII[0] = dvdName;// 输入dvd名称
    dvdII[1] = "0";// 刚入库 未借出
    dvdII[2] = "";
    dvdII[3] = "0";
    break;
    }
    }
    if (isFull == false) {
    System.out.println("仓库已满,不能新增");
    } else {
    System.out.println("新增dvd信息成功");
    }
    break;

    case 2:
    System.out.println(" =====展示列表====");
    System.out.println("编号 片名 是否借出 借出时间 借出次数");
    int j = 1;// 编号
    for (int i = 0; i < dvd.length; i++) {
    String[] dvdI = dvd[i];// 依次将一维数组赋值给dvdI
    if (dvdI[0] != null) {// 判断dvdI是否为空,为空表示没有dvd信息
    // 三目运算符见test.java
    System.out.println((j++) + " " + dvdI[0] + " "
    + (dvdI[1] == "1" ? "已借" : "未借") + " "
    + dvdI[2] + (dvdI[2] == "" ? " " : "号 ")
    + dvdI[3]);
    }
    }
    break;
    case 3:
    System.out.println("请输入你要删除的dvd名称:");
    String dvdInput = scan.next();// 接受用户输入的dvd名称,且赋值给dvdIII
    boolean isEx = false;
    for (int i = 0; i < dvd.length; i++) {
    String[] dvd1 = dvd[i];// 将每一个一维赋值给dvd1
    if (dvd1[0] != null) {
    if (dvd1[0].equals(dvdInput)) {// 判断是否有这个dvd信息
    isEx = true;
    dvd1[0] = null;// 设置为null删除信息
    dvd1[1] = null;
    dvd1[2] = null;
    dvd1[3] = null;
    break;
    }
    }
    }
    if (isEx == false) {
    System.out.println("该dvd信息不存在");
    } else {
    System.out.println("删除成功");
    }

    break;
    case 4:
    System.out.println("请输入你要修改dvd名称:");
    String dvdNa = scan.next();// 用户输入的库中dvd名称
    boolean isExsit = false;// 用来判断库中是否有此dvd(如有没有isExsit赋值为true,没有表示保持false值)
    for (int i = 0; i < dvd.length; i++) {
    String[] dvdN = dvd[i];// 遍历,将每一个一维数组赋值给dvdN;
    // equals 判断两个字符串是否相等,相等返回true否则返回false
    if (dvdN[0] != null) {// 保证一下比较的dvdN信息不为null
    if (dvdN[0].equals(dvdNa)) {// 判断库中是否有这个dvd信息
    isExsit = true;// 判断if语句是否进来
    System.out.println("请输入你要修改后的dvd名称");
    String dvdE = scan.next();// 用dvdE来接受用户修改后的名称
    dvdN[0] = dvdE;// 将原来的名称覆盖
    break;// 注意问题所在!
    }
    }
    }
    if (isExsit == false) {// 两个==叫判断 一个=号 赋值
    System.out.println("你要修改的dvd不存在");
    } else {
    System.out.println("恭喜你,修改成功!!");
    }
    break;
    case 5:
    System.out.println("请输入你要借出的dvd名称:");
    String dName = scan.next();
    boolean isExsi = false;
    for (int i = 0; i < dvd.length; i++) {
    String[] dN = dvd[i];
    if (dN[0] != null) {
    if (dN[0].equals(dName)) {
    isExsi = true;
    if (dN[1].equals("1")) {// 判断借出状态是否借出
    System.out.println("对不起,该dvd已经借出,暂时不能出借!");
    break;// 退出当前break所在的最近的循环语句
    } else {
    System.out.println("请输入你的借出时间(1-30):");
    int date = scan.nextInt();// 接受用户输入的时间
    dN[2] = String.valueOf(date);// 将int转换为String
    dN[1] = "1";// 改变借出状态
    int twice = Integer.parseInt(dN[3]);// 将数字字符串(“123”)转换为int类型
    dN[3] = String.valueOf(twice + 1); // 将int类型转换为字符串存入dvd信息中
    System.out.println("恭喜你借出成功");
    break;
    }
    }
    }
    }
    if (!isExsi) {
    System.out.println("暂时库中没有你要借的dvd");
    }
    break;
    case 6:
    System.out.println("请输入你要还的dvd名称:");
    String dvdNames=scan.next();
    boolean flag=false;
    for(int i=0;i<dvd.length;i++){
    String [] dvdS=dvd[i];
    if(dvdS[0]!=null){
    if(dvdS[0].equals(dvdNames)){
    flag=true;
    if(dvd[1].equals("0")){
    System.out.println("dvd没有借出,请到别家!!");
    break;
    }else{
    //归还dvd 逻辑
    System.out.println("请输入你的归还日期(1-30):");
    int dateB=scan.nextInt();
    if(dateB<Integer.parseInt(dvdS[2])){//判断归还日期是否小于借出日期
    System.out.println("输入日期有误,请退出系统重新归还!");
    }else{
    int time=dateB-Integer.parseInt(dvdS[2]);//计算日期差
    double sumPrice=time*price;//计算总费用
    System.out.println("请输入客户所付金额:");
    double cash=scan.nextDouble();//接受用户所付的金额赋值给cash
    if(cash<sumPrice){//判断所付金额是否足额
    System.out.println("您所付的金额不足,请重新支付");
    }else{
    double changes=cash-sumPrice;//计算找零
    System.out.println("您的借出日期为:"+dvdS[2]+"号");
    System.out.println("您的归还日期为:"+dateB+"号");
    System.out.println("您租借的时间为:"+(time+1)+"天");
    System.out.println("日租单价为:"+price);
    System.out.println("需要支付:"+sumPrice+"元");
    System.out.println("收入:"+cash+"元");
    System.out.println("找零为:"+changes+"元");
    dvdS[1]="0";//将状态改为未借
    dvdS[2]="";//将借出时间记为空
    System.out.println("归还成功!!");
    }
    }
    }
    }

    }
    }
    if(!flag){
    System.out.println("本店没有这个dvd!!");
    }
    break;
    case 7:
    System.out.println("系统已退出");
    System.exit(-1);
    break;
    }

    System.out.println("请输入0,回到主界面");
    input = scan.nextInt();// 接受用户输入
    } while (input == 0);

    }
    }

  • 相关阅读:
    ST表学习笔记
    LCA学习笔记
    $ZOJ 2432 Greatest Common Increasing Subsequence$
    $SP15637 GNYR04H - Mr Youngs Picture Permutations$
    Noip2016换教室
    洛谷4718【模板】Pollard-Rho算法
    CQOI2016 密钥破解
    Poj3696 The Lukiest Number
    Noip2012同余方程
    同余
  • 原文地址:https://www.cnblogs.com/AngelKing1111/p/6160435.html
Copyright © 2011-2022 走看看