达达java_java第二季的达达租车软件模拟

花了一晚上,和大家比较后发现我的方法太复杂,,分别构造了一堆子类。

不过效果基本上达到了要求。

抽象类Cars

package com.projectrent;

public abstract class Cars {

protected int rent=0;

protected String name=””;

protected int num=0;

protected boolean forMan=false;

protected int numOfPassengers;

protected boolean forGoods=false;

protected int tonsOfGoods;

protected int totalRent;

protected int totalNumOfPassengers;

protected int totalTonsOfGoods;

public abstract void setRent();

public abstract void setName();

public abstract void setNum();

public abstract void display();

public abstract void dispARentInfo(int[] nums,int[] days);

}

Car1

package com.projectrent;

public class Car1 extends Cars implements Carforman{

public Car1(){

setRent();

setName();

setNum();

numOfPassengers();

}

@Override

public void setRent() {

// TODO Auto-generated method stub

rent=500;

}

@Override

public void setName() {

// TODO Auto-generated method stub

name=”奥迪A4″;

}

@Override

public void setNum() {

// TODO Auto-generated method stub

num=1;

}

@Override

public void numOfPassengers() {

// TODO Auto-generated method stub

forMan=true;

numOfPassengers=4;

}

@Override

public void display() {

// TODO Auto-generated method stub

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

System.out.print(“载人:”+numOfPassengers+”人”);

if(forGoods){

System.out.print(“,载货:”+tonsOfGoods+”吨”);

}

}else if(forGoods){

System.out.print(“载货:”+tonsOfGoods+”吨”);

}

}

@Override

public void dispARentInfo(int[] nums, int[] days) {

// TODO Auto-generated method stub

if(nums[0]!=0){

int m=0;

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

m=1;

if(forGoods){

m=3;

}

}else if(forGoods){

m=2;

}

switch(m){

case 1:System.out.print(“载人:”+numOfPassengers+”人t”);break;

case 2:System.out.print(“载货:”+tonsOfGoods+”吨t”);break;

case 3:System.out.print(“载人:”+numOfPassengers+”人”);System.out.print(“,载货:”+tonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

totalRent=rent*nums[0]*days[0];

totalNumOfPassengers=nums[0]*numOfPassengers;

totalTonsOfGoods=nums[0]*tonsOfGoods;

System.out.print(“t”+nums[0]+”t”+days[0]+”t”+totalRent+”元t”);

switch(m){

case 1:System.out.print(“载人:”+totalNumOfPassengers+”人”);break;

case 2:System.out.print(“载货:”+totalTonsOfGoods+”吨”);break;

case 3:System.out.print(“载人:”+totalNumOfPassengers+”人”);System.out.print(“,载货:”+totalTonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

}

}

}

Car2

package com.projectrent;

public class Car2 extends Cars implements Carforman {

public Car2(){

setRent();

setName();

setNum();

numOfPassengers();

}

@Override

public void numOfPassengers() {

// TODO Auto-generated method stub

forMan=true;

numOfPassengers=4;

}

@Override

public void setRent() {

// TODO Auto-generated method stub

rent=400;

}

@Override

public void setName() {

// TODO Auto-generated method stub

name=”马自达6″;

}

@Override

public void setNum() {

// TODO Auto-generated method stub

num=2;

}

@Override

public void display() {

// TODO Auto-generated method stub

System.out.println();

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

System.out.print(“载人:”+numOfPassengers+”人”);

if(forGoods){

System.out.print(“,载货:”+tonsOfGoods+”吨”);

}

}else if(forGoods){

System.out.print(“载货:”+tonsOfGoods+”吨”);

}

}

@Override

public void dispARentInfo(int[] nums, int[] days) {

// TODO Auto-generated method stub

if(nums[1]!=0){

System.out.println();

int m=0;

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

m=1;

if(forGoods){

m=3;

}

}else if(forGoods){

m=2;

}

switch(m){

case 1:System.out.print(“载人:”+numOfPassengers+”人t”);break;

case 2:System.out.print(“载货:”+tonsOfGoods+”吨t”);break;

case 3:System.out.print(“载人:”+numOfPassengers+”人”);System.out.print(“,载货:”+tonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

totalRent=rent*nums[1]*days[1];

totalNumOfPassengers=nums[1]*numOfPassengers;

totalTonsOfGoods=nums[1]*tonsOfGoods;

System.out.print(“t”+nums[1]+”t”+days[1]+”t”+totalRent+”元t”);

switch(m){

case 1:System.out.print(“载人:”+totalNumOfPassengers+”人”);break;

case 2:System.out.print(“载货:”+totalTonsOfGoods+”吨”);break;

case 3:System.out.print(“载人:”+totalNumOfPassengers+”人”);System.out.print(“,载货:”+totalTonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

}

}

}

Car3

package com.projectrent;

public class Car3 extends Cars implements Carforman, Carforgoods {

public Car3(){

setRent();

setName();

setNum();

numOfPassengers();

tonsOfGoods();

}

@Override

public void tonsOfGoods() {

// TODO Auto-generated method stub

forGoods=true;

tonsOfGoods=2;

}

@Override

public void numOfPassengers() {

// TODO Auto-generated method stub

forMan=true;

numOfPassengers=4;

}

@Override

public void setRent() {

// TODO Auto-generated method stub

rent=450;

}

@Override

public void setName() {

// TODO Auto-generated method stub

name=”皮卡雪6″;

}

@Override

public void setNum() {

// TODO Auto-generated method stub

num=3;

}

@Override

public void display() {

// TODO Auto-generated method stub

System.out.println();

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

System.out.print(“载人:”+numOfPassengers+”人”);

if(forGoods){

System.out.print(“,载货:”+tonsOfGoods+”吨”);

}

}else if(forGoods){

System.out.print(“载货:”+tonsOfGoods+”吨”);

}

}

@Override

public void dispARentInfo(int[] nums, int[] days) {

// TODO Auto-generated method stub

if(nums[2]!=0){

System.out.println();

int m=0;

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

m=1;

if(forGoods){

m=3;

}

}else if(forGoods){

m=2;

}

switch(m){

case 1:System.out.print(“载人:”+numOfPassengers+”人t”);break;

case 2:System.out.print(“载货:”+tonsOfGoods+”吨t”);break;

case 3:System.out.print(“载人:”+numOfPassengers+”人”);System.out.print(“,载货:”+tonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

totalRent=rent*nums[2]*days[2];

totalNumOfPassengers=nums[2]*numOfPassengers;

totalTonsOfGoods=nums[2]*tonsOfGoods;

System.out.print(“t”+nums[2]+”t”+days[2]+”t”+totalRent+”元t”);

switch(m){

case 1:System.out.print(“载人:”+totalNumOfPassengers+”人”);break;

case 2:System.out.print(“载货:”+totalTonsOfGoods+”吨”);break;

case 3:System.out.print(“载人:”+totalNumOfPassengers+”人”);System.out.print(“,载货:”+totalTonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

}

}

}

Car4

package com.projectrent;

public class Car4 extends Cars implements Carforman {

public Car4(){

setRent();

setName();

setNum();

numOfPassengers();

}

@Override

public void numOfPassengers() {

// TODO Auto-generated method stub

forMan=true;

numOfPassengers=20;

}

@Override

public void setRent() {

// TODO Auto-generated method stub

rent=800;

}

@Override

public void setName() {

// TODO Auto-generated method stub

name=”金龙”;

}

@Override

public void setNum() {

// TODO Auto-generated method stub

num=4;

}

@Override

public void display() {

// TODO Auto-generated method stub

System.out.println();

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

System.out.print(“载人:”+numOfPassengers+”人”);

if(forGoods){

System.out.print(“,载货:”+tonsOfGoods+”吨”);

}

}else if(forGoods){

System.out.print(“载货:”+tonsOfGoods+”吨”);

}

}

@Override

public void dispARentInfo(int[] nums, int[] days) {

// TODO Auto-generated method stub

if(nums[3]!=0){

System.out.println();

int m=0;

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

m=1;

if(forGoods){

m=3;

}

}else if(forGoods){

m=2;

}

switch(m){

case 1:System.out.print(“载人:”+numOfPassengers+”人t”);break;

case 2:System.out.print(“载货:”+tonsOfGoods+”吨t”);break;

case 3:System.out.print(“载人:”+numOfPassengers+”人”);System.out.print(“,载货:”+tonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

totalRent=rent*nums[3]*days[3];

totalNumOfPassengers=nums[3]*numOfPassengers;

totalTonsOfGoods=nums[3]*tonsOfGoods;

System.out.print(“t”+nums[3]+”t”+days[3]+”t”+totalRent+”元t”);

switch(m){

case 1:System.out.print(“载人:”+totalNumOfPassengers+”人”);break;

case 2:System.out.print(“载货:”+totalTonsOfGoods+”吨”);break;

case 3:System.out.print(“载人:”+totalNumOfPassengers+”人”);System.out.print(“,载货:”+totalTonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

}

}

}

Car5

package com.projectrent;

public class Car5 extends Cars implements Carforgoods {

public Car5(){

setRent();

setName();

setNum();

tonsOfGoods();

}

@Override

public void tonsOfGoods() {

// TODO Auto-generated method stub

forGoods=true;

tonsOfGoods=4;

}

@Override

public void setRent() {

// TODO Auto-generated method stub

rent=400;

}

@Override

public void setName() {

// TODO Auto-generated method stub

name=”松花江”;

}

@Override

public void setNum() {

// TODO Auto-generated method stub

num=5;

}

@Override

public void display() {

// TODO Auto-generated method stub

System.out.println();

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

System.out.print(“载人:”+numOfPassengers+”人”);

if(forGoods){

System.out.print(“,载货:”+tonsOfGoods+”吨”);

}

}else if(forGoods){

System.out.print(“载货:”+tonsOfGoods+”吨”);

}

}

@Override

public void dispARentInfo(int[] nums, int[] days) {

// TODO Auto-generated method stub

if(nums[4]!=0){

System.out.println();

int m=0;

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

m=1;

if(forGoods){

m=3;

}

}else if(forGoods){

m=2;

}

switch(m){

case 1:System.out.print(“载人:”+numOfPassengers+”人t”);break;

case 2:System.out.print(“载货:”+tonsOfGoods+”吨t”);break;

case 3:System.out.print(“载人:”+numOfPassengers+”人”);System.out.print(“,载货:”+tonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

totalRent=rent*nums[4]*days[4];

totalNumOfPassengers=nums[4]*numOfPassengers;

totalTonsOfGoods=nums[4]*tonsOfGoods;

System.out.print(“t”+nums[4]+”t”+days[4]+”t”+totalRent+”元t”);

switch(m){

case 1:System.out.print(“载人:”+totalNumOfPassengers+”人”);break;

case 2:System.out.print(“载货:”+totalTonsOfGoods+”吨”);break;

case 3:System.out.print(“载人:”+totalNumOfPassengers+”人”);System.out.print(“,载货:”+totalTonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

}

}

}

Car6

package com.projectrent;

public class Car6 extends Cars implements Carforgoods {

public Car6(){

setRent();

setName();

setNum();

tonsOfGoods();

}

@Override

public void tonsOfGoods() {

// TODO Auto-generated method stub

forGoods=true;

tonsOfGoods=20;

}

@Override

public void setRent() {

// TODO Auto-generated method stub

rent=1000;

}

@Override

public void setName() {

// TODO Auto-generated method stub

name=”依维柯”;

}

@Override

public void setNum() {

// TODO Auto-generated method stub

num=6;

}

@Override

public void display() {

// TODO Auto-generated method stub

System.out.println();

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

System.out.print(“载人:”+numOfPassengers+”人”);

if(forGoods){

System.out.print(“,载货:”+tonsOfGoods+”吨”);

}

}else if(forGoods){

System.out.print(“载货:”+tonsOfGoods+”吨”);

}

}

@Override

public void dispARentInfo(int[] nums, int[] days) {

// TODO Auto-generated method stub

if(nums[5]!=0){

System.out.println();

int m=0;

System.out.print(num+”t”+name+”t”+rent+”元/天”+”t”);

if(forMan){

m=1;

if(forGoods){

m=3;

}

}else if(forGoods){

m=2;

}

switch(m){

case 1:System.out.print(“载人:”+numOfPassengers+”人t”);break;

case 2:System.out.print(“载货:”+tonsOfGoods+”吨t”);break;

case 3:System.out.print(“载人:”+numOfPassengers+”人”);System.out.print(“,载货:”+tonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

totalRent=rent*nums[5]*days[5];

totalNumOfPassengers=nums[5]*numOfPassengers;

totalTonsOfGoods=nums[5]*tonsOfGoods;

System.out.print(“t”+nums[5]+”t”+days[5]+”t”+totalRent+”元t”);

switch(m){

case 1:System.out.print(“载人:”+totalNumOfPassengers+”人”);break;

case 2:System.out.print(“载货:”+totalTonsOfGoods+”吨”);break;

case 3:System.out.print(“载人:”+totalNumOfPassengers+”人”);System.out.print(“,载货:”+totalTonsOfGoods+”吨”);break;

default:System.out.println(“system error”);

}

}

}

}

Initial

package com.projectrent;

import java.util.Scanner;

public class Initial {

static Scanner input;

static int[] nums=new int[6];

static int[] days=new int[6];

static boolean endOfInput=false;

static int allNumOfCars;

static int allRent;

static int allPassengers;

static int allGoods;

static boolean exit=false;

//display cars information

public static void display(){

Cars car1=new Car1();

Cars car2=new Car2();

Cars car3=new Car3();

Cars car4=new Car4();

Cars car5=new Car5();

Cars car6=new Car6();

System.out.println(“下面是可租车辆类型与租金信息:”);

System.out.println(“序 t名称t租金t载人/载货”);

car1.display();

car2.display();

car3.display();

car4.display();

car5.display();

car6.display();

}

//获得租车信息

public static void getRentInfo(){

int rentOrNot,No;

do{

System.out.print(“所租车序 :”);

No=input.nextInt();

System.out.print(“该类车数量:”);

nums[No-1]=input.nextInt();

System.out.print(“共租借天数:”);

days[No-1]=input.nextInt();

System.out.println(“是否继续输入:(1是 0否)”);

do{

rentOrNot=input.nextInt();

if(rentOrNot==1){

break;

}

else if(rentOrNot==0){

endOfInput=true;

System.out.println(“正在输出您的租车信息,请稍候…”);

break;

}

else System.out.println(“请重新输入:”);

}while(true);

}while(!endOfInput);

}

//输出租车信息

public static void dispRentInfo(){

Cars car1=new Car1();

Cars car2=new Car2();

Cars car3=new Car3();

Cars car4=new Car4();

Cars car5=new Car5();

Cars car6=new Car6();

System.out.println(“您的租车信息为:”);

System.out.println(“序 t名称t租金t载人/载货tt数量t天数t总金额t总载重(人/货)”);

car1.dispARentInfo(nums, days);

car2.dispARentInfo(nums, days);

car3.dispARentInfo(nums, days);

car4.dispARentInfo(nums, days);

car5.dispARentInfo(nums, days);

car6.dispARentInfo(nums, days);

System.out.println();

for(int a=0;a

allNumOfCars+=nums[a];

}

allRent=car1.totalRent+car2.totalRent+car3.totalRent+car4.totalRent+car5.totalRent+car6.totalRent;

allPassengers=car1.totalNumOfPassengers+car2.totalNumOfPassengers+car3.totalNumOfPassengers+car4.totalNumOfPassengers+car5.totalNumOfPassengers+car6.totalNumOfPassengers;

allGoods=car1.totalTonsOfGoods+car2.totalTonsOfGoods+car3.totalTonsOfGoods+car4.totalTonsOfGoods+car5.totalTonsOfGoods+car6.totalTonsOfGoods;

System.out.print(“合计t–t–t–tt”+allNumOfCars+”t-t”+allRent+”元t”);

if(allPassengers!=0){

System.out.print(“载人:”+allPassengers+”人”);

if(allGoods!=0){

System.out.print(“,载货:”+allGoods+”吨”);

}

}else if(allGoods!=0){

System.out.print(“载货:”+allGoods+”吨”);

}

}

public static void main(String[] args) {

// TODO Auto-generated method stub

//verification & display

input=new Scanner(System.in);

int rentOrNot,No;

System.out.println(“*******欢迎使用答答租车系统*******n您是否要租车是 0否)”);

do{

rentOrNot=input.nextInt();

if(rentOrNot==1){

display();break;

}

else if(rentOrNot==0){

System.out.println(“成功退出。欢迎再次使用。”);

exit=true;break;

}

else System.out.println(“请重新输入:”);

}while(!exit);

if(!exit){

System.out.println();

System.out.println(“*****请输入租车信息:*****”);

//get info of rent cars, include Nos, nums of cars, nums of days

getRentInfo();

dispRentInfo();

//confirmation module

System.out.println();

System.out.println(“*****以上为您的租车信息,请确认:*****”);

do{

System.out.println(“1确认 0取消”);

rentOrNot=input.nextInt();

if(rentOrNot==1){//rent info confirmation

System.out.println(“正在处理,请稍候…”);break;

}

else if(rentOrNot==0){//cancel confirmation

System.out.println(“确定要取消吗确定 0返回确认信息)”);

do{

rentOrNot=input.nextInt();

if(rentOrNot==1){//really cancel

System.out.println(“成功取消。欢迎再次使用。”);

exit=true;break;

}else if(rentOrNot==0){//get back

break;

}else System.out.println(“请重新输入:”);

}while(!exit);

}

else System.out.println(“请重新输入:”);

}while(!exit);

if(!exit){

//payment module

do{

System.out.println(“您需要支付的金额为:”+allRent+”元n请选择支付方式:”);

System.out.println(“1支付成功 0支付失败 7直接退出”);

rentOrNot=input.nextInt();

if(rentOrNot==1){

System.out.println(“您已成功支付,可打印以上信息作为凭证。n******谢谢使用,再见******”);break;

}

else if(rentOrNot==0){

System.out.println(“支付失败,请重试。”);

}

else if(rentOrNot==7){

System.out.println(“成功退出。欢迎再次使用。”);

exit=true;break;

}

else System.out.println(“请重新输入:”);

}while(!exit);

}

}

}

}

相关资源:水和蒸汽计算软件源程序-C++代码类资源-CSDN文库

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月25日
下一篇 2021年1月25日

相关推荐