6

您所在的位置:网站首页 isrc编号查询 6

6

#6| 来源: 网络整理| 查看: 265

java旧题复习 6-3 图书和音像租赁 (20分) 图书和音像店提供出租服务,包括图书和DVD的出租。图书包括书名(String,一个词表示)和价格(double),DVD包括片名(String,一个词表示)。它们都是按天出租,但租金计算方式却不同,图书的日租金为图书价格的1%,DVD的日租金为固定的1元。构造图书和DVD类的继承体系,它们均继承自Media类,且提供方法getDailyRent()返回日租金,构造音像店类MediaShop,提供静态函数double calculateRent(Media[] medias, int days)。 在main函数中构造了Media数组,包含图书和DVD的对象,调用calculateRent方法得到并输出租金,保留小数点两位

输入描述: 待租图书和DVD的数量

图书和DVD的详细信息

租借天数

输出描述: 总的租金

裁判测试程序样例:

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); Media[] ms = new Media[n]; for (int i=0; i ms[i] = new Book(sc.next(), sc.nextDouble()); }else { ms[i] = new DVD(sc.next()); } } double rent = MediaShop.calculateRent(ms, sc.nextInt()); System.out.printf("%.2f", rent); } } /* 请在这里填写答案 */

输入样例:

5 book Earth 25.3 book Insights 34 dvd AI dvd Transformer book Sun 45.6 20

输出样例:

60.98

答案:

import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); Media[] ms = new Media[n]; for (int i=0; i ms[i] = new Book(sc.next(), sc.nextDouble()); }else { ms[i] = new DVD(sc.next()); } } double rent = MediaShop.calculateRent(ms, sc.nextInt()); System.out.printf("%.2f", rent); } } abstract class Media{//根据题意Media时抽象类 abstract double getDailyRent(); } class Book extends Media{//Book继承自Media String name; double price; public Book(String name,double price) { this.name=name; this.price=price; } public double getDailyRent() { return this.price*0.01; } } class DVD extends Media{//DVD继承自Media String name; public DVD(String name) { this.name=name; } public double getDailyRent() { return 1; } } class MediaShop{//MediaShop类 //提供静态方法!!! public static double calculateRent(Media[] medias, int days) { double sum=0; for(Media m:medias) { if(m instanceof DVD) { DVD d=(DVD)m; sum+=d.getDailyRent()*days; }else if(m instanceof Book) { Book b=(Book)m; sum+=b.getDailyRent()*days; } } return sum; } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3