java简单租车系统 慕课手记_JAVA入门第二季 租车系统练习

2023-12-14 22:20

本文主要是介绍java简单租车系统 慕课手记_JAVA入门第二季 租车系统练习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

花了4天才搞定!第一次啊,我的思路是,汽车是个抽象的父类拥有基本的属性

2个接口,一个载人,一个载货;然后是3个子类,一个是客车继承父类汽车+载人接口;一个是货车继承父类汽车+载货接口;一个是皮卡继承父类+载人+载货2个接口;

代码如下:

父类汽车:

/*

车辆是个抽象类,

*/

package com.zuche;

public abstract class Car {

public int Num ;// 车辆编号

public String name; //车辆名字

public double price;// 车辆租金

}

2个接口:

package com.zuche;

//车辆载货属性的接口

public interface Cargo {

//载货量属性

public double catgoNum = 0;

}

package com.zuche;

//车辆载人属性的接口

public interface CarryPeople {

public int carry= 0 ;

}

3个子类:

package com.zuche;

//客车属于车具有载人属性

public class Passengercar extends Car implements CarryPeople {

public void passGercar(int Num ,String name,double price,int carry){

System.out.println(Num+". "+name+" "+price+"元/天 ,载人:"+carry+"人");

}

}

package com.zuche;

//皮卡属于车 具有载人和载货的属性

public class Pickup extends Car implements Cargo, CarryPeople {

public void pickup(int Num ,String name,double price,int carry,double cargoNum){

System.out.println(Num+". "+name+" "+price+"元/天 ,载人:"+carry+"人,载货:"+cargoNum+"吨");

}

}

package com.zuche;

//火车属于车具有载货的属性

public class Truck extends Car implements Cargo {

public void truck(int Num ,String name,double price,double catgoNum){

System.out.println(Num+". "+name+" "+price+"元/天 ,载货:"+catgoNum+"吨");

}

}

主程序:

package com.zuche;

import java.util.Scanner;

import java.util.*;

public class Zuchexitong {

public static void main(String[] args) {

System.out.println("欢迎使用嗒嗒租车系统:");

System.out.println("您是否要租车请按:1是,0否");

Scanner input = new Scanner(System.in);

int i = input.nextInt();

if(i == 1){

System.out.println("您可租车的类型及其价目表:");

System.out.print("序号 汽车名称 租金 ");

System.out.println(" 容量");

// TODO 自动生成的方法存根

Passengercar Audi = new Passengercar();

Audi.passGercar(1,"奥迪A4",500,5);

Passengercar MzDa = new Passengercar();

MzDa.passGercar(2,"马自达6",400,5);

Pickup piku = new Pickup();

piku.pickup(3,"皮卡雪6",450,5,2);

Passengercar Jinlong = new Passengercar();

Jinlong.passGercar(4, "金龙 ", 800, 20);

Truck SongHJ = new Truck();

SongHJ.truck(5, "松花江 ", 400, 4);

Truck YiWeKe = new Truck();

YiWeKe.truck(6, "依维柯 ", 1000, 20);

System.out.println("请输入您要的汽车数量:");

Scanner jnput = new Scanner(System.in);

int j = jnput.nextInt();

int[] nums =new int[j];

int k=0;

int f =1;

do{

System.out.println("请输入第"+f+"辆车的序号");

Scanner knput = new Scanner(System.in);

nums[k]=knput.nextInt();

if(nums[k]<7&&nums[k]>0){

f++;

k++;

}else{

System.out.println("请重新输入:");

System.out.println("请输入第"+f+"辆车的序号");

Scanner rnput = new Scanner(System.in);

nums[k]=rnput.nextInt();

f++;k++;

}

}while(k

System.out.println("请输入租车天数:");

Scanner day = new Scanner(System.in);

int days = day.nextInt();

System.out.println("您的账单:");

System.out.println("***可载人的车有:");

int one=0,two =0, three =0,four =0,fife =0,six = 0;

for(int l=0;l

switch(nums[l]){

case 1 :

one++;

break;

case 2 :

two++;

break;

case 3:

three++;

break;

case 4:

four++;

break;

case 5:

fife++;

break;

case 6:

six++;

break;

}

}

if(one>0)

System.out.print("\t奥迪A4 X"+one);

if(two>0)

System.out.print("\t马自达 X"+two);

if(three>0)

System.out.print("\t皮卡雪 X"+three);

if(four>0)

System.out.print("\t金龙 X"+four);

int people= (one+two+three)*5+four*20;

System.out.println("\t共载人数为:"+people+"人");

System.out.println("***可载货的车有:");

if(three>0)

System.out.print("\t皮卡雪 X"+three);

if(fife>0)

System.out.print("\t松花江 X"+fife);

if(six>0)

System.out.print("\t松花江 X"+six);

int dun =three*2+fife*4+six*20;

System.out.println("\t共载货:"+dun+"吨");

int Price= (one*500+two*400+three*450+four*800+fife*400+six*1000)*days;

System.out.println("***租车总价格:"+Price+"元,共"+days+"天。");

System.out.println("******谢谢惠顾!******");

}else System.out.println("欢迎下次再来!");

}

}

运行结果

AAffA0nNPuCLAAAAAElFTkSuQmCC

这篇关于java简单租车系统 慕课手记_JAVA入门第二季 租车系统练习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/494102

相关文章

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

Java注解之超越Javadoc的元数据利器详解

《Java注解之超越Javadoc的元数据利器详解》本文将深入探讨Java注解的定义、类型、内置注解、自定义注解、保留策略、实际应用场景及最佳实践,无论是初学者还是资深开发者,都能通过本文了解如何利用... 目录什么是注解?注解的类型内置注编程解自定义注解注解的保留策略实际用例最佳实践总结在 Java 编程

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

电脑找不到mfc90u.dll文件怎么办? 系统报错mfc90u.dll丢失修复的5种方案

《电脑找不到mfc90u.dll文件怎么办?系统报错mfc90u.dll丢失修复的5种方案》在我们日常使用电脑的过程中,可能会遇到一些软件或系统错误,其中之一就是mfc90u.dll丢失,那么,mf... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

Java 实用工具类Spring 的 AnnotationUtils详解

《Java实用工具类Spring的AnnotationUtils详解》Spring框架提供了一个强大的注解工具类org.springframework.core.annotation.Annot... 目录前言一、AnnotationUtils 的常用方法二、常见应用场景三、与 JDK 原生注解 API 的

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

Java中的StringBuilder之如何高效构建字符串

《Java中的StringBuilder之如何高效构建字符串》本文将深入浅出地介绍StringBuilder的使用方法、性能优势以及相关字符串处理技术,结合代码示例帮助读者更好地理解和应用,希望对大家... 目录关键点什么是 StringBuilder?为什么需要 StringBuilder?如何使用 St