17章

public class A {    
        
        int[] count = new int[50];    
        String[] name = new String[50];    
        int[] state = new int[50];    
        String[] date = new String[50];    
    }    

[java] view plain copy 在CODE上查看代码片派生到我的代码片
import java.text.ParseException;  
import java.text.SimpleDateFormat;  
import java.util.Date;  
import java.util.Scanner;  
  
public class B {  
  
    Scanner input = new Scanner(System.in);  
    A dvd = new A();  
  
    public void LJL() {  
  
        dvd.name[0] = "动漫";  
        dvd.state[0] = 0;  
        dvd.date[0] = "2015-11-06";  
        dvd.count[0] = 0;  
        dvd.name[1] = "热血";  
        dvd.state[1] = 1;  
        dvd.date[1] = "2015-7-17";  
        dvd.count[1] = 0;  
        dvd.name[2] = "狂野";  
        dvd.state[2] = 0;  
        dvd.date[2] = "2015-10-11";  
        dvd.count[2] = 0;  
  
    }  
  
    public void jl() {  
        System.out.println("**************************\n");  
        System.out.println("\t欢迎使用迷你 DVD 管理器");  
        System.out.println("**************************\n");  
        System.out.println("0.借出排行榜");  
        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.退       出");  
        System.out.println("*******************************");  
  
        System.out.println("请输入:");  
        int num = input.nextInt();  
        switch (num) {  
        case 0:  
            aa();  
            System.out.println("************************");  
            returnMian();  
            break;  
        case 1:  
            bb();  
            System.out.println("************************");  
            returnMian();  
            break;  
        case 2:  
            cc();  
            System.out.println("************************");  
            returnMian();  
            break;  
        case 3:  
            dd();  
            System.out.println("************************");  
            returnMian();  
            break;  
        case 4:  
            ee();  
            System.out.println("************************");  
            returnMian();  
            break;  
        case 5:  
            ff();  
            System.out.println("************************");  
            returnMian();  
            break;  
        case 6:  
            System.out.println("谢谢你的使用~~");  
            System.out.println("************************");  
            returnMian();  
            break;  
        }  
  
    }  
  
    public void returnMian() {  
        System.out.println("输入0返回:");  
        if (input.nextInt() == 0) {  
            jl();  
        } else {  
            System.out.println("输入错误,异常终止~~");  
        }  
    }  
  
    public void aa() {  
        String[] newname = new String[50];  
        int[] newcount = new int[50];  
        for (int i = 0; i < dvd.name.length; i++) {  
            newname[i] = dvd.name[i];  
            newcount[i] = dvd.count[i];  
        }  
        for (int i = 0; i < newname.length; i++) {  
            for (int j = i + 1; j < newname.length; j++) {  
                if (newcount[i] > newcount[j]) {  
                    int temp = newcount[i];  
                    newcount[i] = newcount[j];  
                    newcount[j] = temp;  
                    String temp1 = newname[i];  
                    newname[i] = newname[j];  
                    newname[j] = temp1;  
                }  
            }  
        }  
        System.out.println("次数\t名称");  
  
        for (int i = newname.length - 1; i >= 0; i--) {  
            if (newname[i] != null) {  
                System.out.println(newcount[i] + "\t《" + newname[i] + "》");  
            }  
        }  
    }  
  
    public void bb() {  
        System.out.println("-------------------------------------->新增DVD\n");  
        System.out.print("请输入DVD名称:");  
        for (int i = 0; i < dvd.name.length; i++) {  
            if (dvd.name[i] == null) {  
                dvd.name[i] = input.next();  
                System.out.print("请输入日期:");  
                dvd.date[i] = input.next();  
                dvd.state[i] = 1;  
                System.out.println(dvd.name[i] + "新增成功!");  
                break;  
            }  
        }  
    }  
  
    public void cc() {  
        System.out.println("-------------------------------------->查看DVD\n");  
        System.out.println("序号\t状态\t名称\t\t借出日期");  
        for (int i = 0; i < dvd.name.length; i++) {  
            if (dvd.name[i] == null) {  
                break;  
            } else if (dvd.state[i] == 0) {  
                System.out.println((i + 1) + "\t已借出\t" + "《" + dvd.name[i]  
                        + "》" + "\t" + dvd.date[i]);  
            } else if (dvd.state[i] == 1) {  
                System.out  
                        .println((i + 1) + "\t可借\t" + "《" + dvd.name[i] + "》");  
            }  
        }  
  
    }  
  
    public void dd() {  
        System.out.println("-------------------------------------->删除DVD\n");  
        System.out.println("请输入删除的名字:");  
        String s = input.next();  
        for (int i = 0; i < dvd.name.length; i++) {  
            if (dvd.name[i] != null && dvd.name[i].equals(s)  
                    && dvd.state[i] == 1) {  
                int j = i;  
                while (dvd.name[j + 1] != null) {  
                    dvd.name[j] = dvd.name[j + 1];  
                    dvd.state[j] = dvd.state[j + 1];  
                    dvd.date[j] = dvd.date[j + 1];  
                    j++;  
                }  
  
                dvd.name[j] = null;  
                dvd.date[j] = null;  
                System.out.println("删除" + "<<" + s + ">>" + "成功~~");  
                returnMian();  
                break;  
            } else if (dvd.name[i] != null && dvd.name[i].equalsIgnoreCase(s)  
                    && dvd.state[i] == 0) {  
                System.out.println(dvd.name[i] + "为借出状态!");  
                returnMian();  
            }  
        }  
    }  
  
    public void ee() {  
        System.out.println("-------------------------------------->借出DVD\n");  
        System.out.println("请输入DVD的名称:");  
        String name = input.next();  
        for (int i = 0; i < dvd.name.length; i++) {  
            if (dvd.name[i] == null) {  
                System.out.println("没有找到匹配信息!");  
                break;  
            } else if (dvd.name[i].equals(name) && dvd.state[i] == 1) {  
  
                System.out.println("请输入借出的年月日:");  
                dvd.date[i] = input.next();  
                System.out.println("《" + name + "》" + "借出成功~~");  
                dvd.state[i] = 0;  
                dvd.count[i]++;  
                break;  
            } else if (dvd.name[i].equals(name) && dvd.state[i] == 0) {  
  
                System.out.println("不好意思,《" + name + "》已被借出!");  
                break;  
  
            }  
        }  
  
    }  
  
    public void ff() {  
        System.out.println("-------------------------------------->归还DVD\n");  
        System.out.println("请输入DVD的名称:");  
        String name = input.next();  
        for (int i = 0; i <= dvd.name.length; i++) {  
            if (dvd.name[i] == null) {  
                System.out.println("没有找到匹配信息~~");  
                break;  
            } else if (dvd.name[i].equals(name) && dvd.state[i] == 0) {  
  
                System.out.print("请输入归还的日期:");  
                String redate = input.next();  
                System.out.println(name + "归还成功!");  
                System.out.println("借出日期为:" + dvd.date[i]);  
                System.out.println("归还日期为:" + redate);  
                String d1 = dvd.date[i];  
                String d2 = redate;  
                long day = charge(d2, d1);  
                System.out.println("应付租金:" + day + "元");  
                dvd.date[i] = redate;  
                dvd.state[i] = 1;  
                break;  
            } else if (dvd.name[i].equals(name) && dvd.state[i] == 1) {  
                System.out.println(name + "无该DVD,输入错误。");  
                break;  
            }  
        }  
    }  
  
    public long charge(String date1, String date2) {  
        long charge = 0;  
        SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");  
        try {  
            java.util.Date d1 = sd.parse(date1);  
            java.util.Date d2 = sd.parse(date2);  
            charge = (d1.getTime() - d2.getTime()) / (24 * 60 * 60 * 1000);  
        } catch (ParseException e) {  
            e.printStackTrace();  
        }  
        return charge;  
    }  
}  

[java] view plain copy 在CODE上查看代码片派生到我的代码片
public class C {  
  
    public static void main(String[] args) {  
  
        B i = new B();  
  
        i.LJL();  
        i.jl();  
    }  
}  

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值