zoukankan      html  css  js  c++  java
  • DVD项目

    package sy.com.cn;
    import java.util.*;
    public class DvdWorker {
    public static void main(String[]args){
    //标识是否退出DVD
    boolean biao=false;
    //初始化数据 DVD名称
    String[] name=new String[6];
    //DVD 的状态
    int[] state=new int[6];
    //DVD的借出时间
    int[] date=new int[6];
    //DVD借出次数
    int[] conut=new int[6];
    //变量的初始化
    name[0]="罗马假日";
    state[0]=1;// 1表示已借出 0表示可阅借;
    date[0]=7;//借出日期是7日
    conut[0]=13;//已借出13次

    name[1]="风声鹤唳";
    state[1]=0;// 1表示已借出 0表示可阅借;
    date[1]=0;//借出日期是0日
    conut[1]=15;//已借出15次

    name[2]="浪漫满屋";
    state[2]=0;// 1表示已借出 0表示可阅借;
    date[2]=0;//借出日期是0日
    conut[2]=19;//已借出19次

    name[3]="笑傲江湖";
    state[3]=0;// 1表示已借出 0表示可阅借;
    date[3]=0;//借出日期是0日
    conut[3]=100;//已借出100次
    //用户输入数字的变量 no
    int no=-1;

    do{
    //输出DVD菜单
    System.out.println("欢迎使用迷你DVD管理器");
    System.out.println("---------------------------------------------");
    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("---------------------------------------------");
    Scanner input=new Scanner(System.in);
    System.out.println("请选择:");
    //获取用户输入的数字
    no=input.nextInt();
    switch(no){
    case 1:
    //新增DVD的操作
    System.out.println("--->新增DVD ");
    System.out.println("请输入DVD名称:");
    String names=input.next();
    //false表示没有插入进去 true表示插入进去了。
    boolean flag=false;
    for( int i=0;i<name.length;i++){
    //插入的DVD 位置是空的时候方能插入
    if(name[i]==null){
    name[i]=names;
    flag=true;
    break;
    }

    }
    if(flag){

    System.out.println("新增《"+names+"》成功!");
    }else{
    System.out.println("光盘已满,不能新增了");
    }

    break;
    case 2:
    //查看DVD的操作 循环输出 名称 状态 等属性
    System.out.println("--->查看DVD ");

    System.out.println("序号 状态 名称 借出日期 借出次数");
    //输出 查看DVD菜单
    for(int i=0;i<name.length;i++){
    if(name[i]!=null){
    String yue=(state[i]==0)?"可阅借":"已借出";
    String ri=(date[i]==0)?"":date[i]+"日";
    String ci=conut[i]+"次";
    System.out.println((i+1)+" "+yue+" "+name[i]+" "+ri+" "+ci);

    }
    }
    break;
    case 3:
    //删除DVD的操作 首先要输入要删除的名称 是否能被删除 以及从后往前赋值。
    System.out.println("--->删除DVD ");
    System.out.print("请输入DVD名称:");
    String shanChu=input.next();
    int index=name.length;
    //标识输入的名称是否能被删除 false是不能被删除 true能被删除
    boolean biao2=false;
    for(int i=0;i<name.length;i++){
    if(shanChu.equals(name[i])&&state[i]==1){
    biao2=true;
    System.out.println("对不起,DVD已经解除无法删除");
    break;
    }else if(shanChu.equals(name[i])&&state[i]==0){
    biao2=true;
    index=i;
    System.out.println("删除《"+shanChu+"》成功!");
    break;
    }
    }
    //进行删除出操作
    for(int j=index;j<name.length-1;j++){
    name[j]=name[j+1];
    state[j]=state[j+1];
    date[j]=date[j+1];
    conut[j]=conut[j+1];
    //依次往前赋值之后 最后一个值是0
    name[name.length-1]=null;
    state[state.length-1]=0;
    date[date.length-1]=0;
    conut[conut.length-1]=0;
    }
    if(!biao2){
    //标识 如果是false 就找不到相匹配的 无法删除
    System.out.println("对不起,没有找到相应的DVD,不能删除");
    }
    break;
    //借出DVD的操作
    case 4:
    System.out.println("--->借出DVD ");
    System.out.print("请输入DVD名称:");
    String jieChu=input.next();
    for(int i=0;i<name.length;i++){
    //如果里面是空的话 则找不到DVD 不能借出
    if(name[i]==null){
    System.out.println("抱歉,没有找到DVD");
    break;
    }else if(jieChu.equals(name[i])&&state[i]==1){
    System.out.println("抱歉,您找的DVD已借出");
    break;
    }else if(jieChu.equals(name[i])&&state[i]==0){
    System.out.println("请输入借出日期:");
    date[i]=input.nextInt();
    //日期必须在1到31之间 否则就从新输入日期
    while(date[i]<1||date[i]>31){
    System.out.println("日期输入错误必须在1-31日之间, 请重新输入:");
    date[i]=input.nextInt();
    }
    //借出之后 次数加1 然后状态变为已借出
    state[i]=1;
    conut[i]++;
    System.out.println("借出《"+jieChu+"》成功!");
    break;
    }
    }
    break;
    //归还DVD的操作
    case 5:
    System.out.println("--->归还DVD ");
    //获取用户的输入 想要归还的DVD
    System.out.print("请输入DVD名称:");
    String guiHuan=input.next();
    for(int i=0;i<name.length;i++){
    if(name[i]==null){
    System.out.println("没有匹配的DVD信息");
    break;
    }else if(guiHuan.equals(name[i])&&state[i]==0){
    System.out.println("已存在 无法归还");
    break;
    }else if(guiHuan.equals(name[i])&&state[i]==1){
    System.out.print("请输入归还日期:");
    int dates=input.nextInt();
    //归还日期必须大于借出日期
    while(dates<date[i]||dates>31){
    if(dates<date[i]){
    System.out.println("输入日期有误,归还日期不能小于借出日期 请重新输入:");
    }else if(dates>31){
    System.out.println("输入日期有误,归还日期必须在1-31日之间 请重新输入:");
    }
    dates=input.nextInt();
    }
    //计算租金 一天一元钱 money=(dates-date[i])*1
    double money=(dates-date[i])*1.0;
    System.out.println("*************************************");
    System.out.println("归还《"+guiHuan+"》成功!");
    System.out.println("借出日期是:"+date[i]+"日");
    System.out.println("归还日期是:"+dates+"日");
    System.out.println("应付租金(元):"+money+"元");
    //数据更新
    state[i]=0;
    date[i]=0;
    break;
    }
    }

    break;
    // 退出DVD程序
    case 6:

    biao=true;
    break;
    default:
    biao=true;
    break;
    }
    if(biao){
    no=-1;
    break;
    }else{
    System.out.println("**********************************");
    //获取用户的输入
    System.out.println("请输入0返回");
    no=input.nextInt();

    }
    //当no的值是0的时候再次进入循环体
    }while( no==0);

    System.out.println("退出DVD");
    }
    }
  • 相关阅读:
    算法与数据结构基础(一)排序基础1.选择排序
    Comparable和Comparator 是什么以及区别
    IE浏览器兼容性调整总结技巧
    css属性总结
    spring入门详细教程(五)
    Spring入门详细教程(一)
    Spring入门详细教程(四)
    2018年终总结(一只刚毕业的程序猿)
    Spring入门详细教程(三)
    Spring入门详细教程(二)
  • 原文地址:https://www.cnblogs.com/Blogyin/p/6555320.html
Copyright © 2011-2022 走看看