package com.dadazuche;
//车父类
public class Car {
//封装
private String ctype;//车型
private String cname;//车名
private int cnum; //车载量
private int cprice; //日租金
//带参数方法
public Car(String type,String name,int num,int price){
ctype=type;
cname=name;
cnum=num;
cprice=price;
}
//获取车型方法
public String getCtype(){
return ctype;
}
//赋值车型方法
public void setCtype(String type){
ctype=type;
}
//获取车名方法
public String getCname(){
return cname;
}
//赋值车名方法
public void setCname(String name){
cname=name;
}
//获取车载量方法
public int getCnum(){
return cnum;
}
//赋值车载量方法
public void setCnum(int num){
cnum=num;
}
//获取日租金方法
public int getCprice(){
return cprice;
}
//赋值日租金方法
public void setCprice(int price){
cprice=price;
}
//计算总租金方法
public int sum(int unit,int days){
return unit*days*getCprice();
}
}
package com.dadazuche;
//卡车子类,继承父类
public class Truck extends Car {
public Truck(String type, String name, int num, int price) {
super(type, name, num, price);
// TODO Auto-generated constructor stub
}
}
//客车子类,继承父类
package com.dadazuche;
public class Bus extends Car {
public Bus(String type, String name, int num, int price) {
super(type, name, num, price);
// TODO Auto-generated constructor stub
}
}
//皮卡车子类,继承父类
package com.dadazuche;
public class Pickup extends Car {
public Pickup(String type, String name, int num, int price) {
super(type, name, num, price);
// TODO Auto-generated constructor stub
}
}
//测试执行
package com.dadazuche;
import java.util.Scanner;
public class Use {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int j=0;
int a=0;
Truck[] truck={new Truck("重卡","一汽乘龙",200,1500),new Truck("重卡","东风康明斯",250,1800),new Truck("中卡","北京解放",100,800),new Truck("轻卡","峻岭v系列",50,500)};
Bus[] Bus={new Bus("大巴","宇通客车",45,900),new Bus("大巴","金龙客车",45,900),new Bus("中巴","金旅客车",30,600),new Bus("小巴","金杯系列",10,300)};
Pickup[] Pickup={new Pickup("皮卡","吉普系列",5,400),new Pickup("带后巷","江铃系列",5,600)};
Scanner input=new Scanner(System.in);
System.out.println("欢迎使用哒哒租车!");
System.out.println("请选择您的租车用途:1 拉货 2 载客 3 综合");
int in1=input.nextInt();
while(in1!=1&&in1!=2&&in1!=3&&a<3){
a++;
System.out.println("您的输入有误,请按提示选择编号!");
System.out.println("请选择您的租车用途:1 拉货 2 载客 3 综合");
in1=input.nextInt();
}
System.out.println(a);
System.out.println(in1);
if (a>=3){System.out.println("您的输入错误次数超过限制,欢迎下次再来!");}
if(in1==1){
System.out.println("拉货,有如下车型可以选择!");
for(int i=0;i<truck.length;i++){
j++;
System.out.println("编号:"+j+" " +" 车型:"+truck[i].getCtype() +" 品牌:"+ truck[i].getCname() +" 车载量:"+truck[i].getCnum() +"吨 日租金:"+truck[i].getCprice()+" 元");
}
System.out.println("请选择车型编号:");
int in2=input.nextInt();
a=0;
while((in2>j||in2==0)&&a<3){
a++;
System.out.println("您的输入有误,请按提示选择编号!");
System.out.println("请选择车型编号:");
in2=input.nextInt();
}
if(a>=3){System.out.println("您的输入错误次数超过限制,欢迎下次再来!");}
else {
System.out.println("输入租用车数:");
int in3=input.nextInt();
System.out.println("输入租用天数:");
int in4=input.nextInt();
Truck tru= truck[in2-1];
int sum=tru.sum(in3, in4);
System.out.println("您选择的是: "+in2+" "+"车型:"+truck[in2-1].getCtype() +" 品牌:"+ truck[in2-1].getCname() +" 车载量:"+truck[in2-1].getCnum() +"吨 日租金:"+truck[in2-1].getCprice()+" 元");
System.out.println("租用车数 "+in3+" 辆 ,租用天数 "+in4+" 天 ,总共 "+sum+" 元");
}}
if(in1==2){
System.out.println("载客,有如下车型可以选择!");
for(int i=0;i<Bus.length;i++){
j++;
System.out.println(j+" " +" 车型:"+Bus[i].getCtype() +" 品牌:"+ Bus[i].getCname() +" 车载量:"+Bus[i].getCnum() +"吨 日租金:"+Bus[i].getCprice()+" 元");
}
System.out.println("请选择车型:");
int in2=input.nextInt();
a=0;
while((in2>j||in2==0)&&a<3){
a++;
System.out.println("您的输入有误,请按提示选择编号!");
System.out.println("请选择车型:");
in2=input.nextInt();
}
if(a>=3){System.out.println("您的输入错误次数超过限制,欢迎下次再来!");}
else{
System.out.println("输入租用车数:");
int in3=input.nextInt();
System.out.println("输入租用天数:");
int in4=input.nextInt();
Bus bus= Bus[in2-1];
int sum=bus.sum(in3, in4);
System.out.println("您选择的是: "+in2+" "+"车型:"+Bus[in2-1].getCtype() +" 品牌:"+ Bus[in2-1].getCname() +" 车载量:"+Bus[in2-1].getCnum() +"吨 日租金:"+Bus[in2-1].getCprice()+" 元");
System.out.println("租用车数 "+in3+" 辆 ,租用天数 "+in4+" 天 ,总共 "+sum+" 元");
}}
if(in1==3){
System.out.println("综合,有如下车型可以选择!");
for(int i=0;i<Pickup.length;i++){
j++;
System.out.println(j+" " +" 车型:"+Pickup[i].getCtype() +" 品牌:"+ Pickup[i].getCname() +" 车载量:"+Pickup[i].getCnum() +"吨 日租金:"+Pickup[i].getCprice()+" 元");
}
System.out.println("请选择车型:");
int in2=input.nextInt();
a=0;
while((in2>j||in2==0)&&a<3){
System.out.println("您的输入有误,请按提示选择编号!");
System.out.println("请选择车型:");
in2=input.nextInt();
a++;
}
if(a>=3){System.out.println("您的输入错误次数超过限制,欢迎下次再来!");}
else{
System.out.println("输入租用车数:");
int in3=input.nextInt();
System.out.println("输入租用天数:");
int in4=input.nextInt();
Pickup pickup= Pickup[in2-1];
int sum=pickup.sum(in3, in4);
System.out.println("您选择的是: "+in2+" "+"车型:"+Pickup[in2-1].getCtype() +" 品牌:"+ Pickup[in2-1].getCname() +" 车载量:"+Pickup[in2-1].getCnum() +"吨 日租金:"+Pickup[in2-1].getCprice()+" 元");
System.out.println("租用车数 "+in3+" 辆 ,租用天数 "+in4+" 天 ,总共 "+sum+" 元");
}}
}
}
你可以将你代码重复的部分封装成带参的方法,进行调用。比如你对输入的校验这一块,可以封装成一个校验的方法,你选择的车型那也可以封装成方法