今天试着写了一个新的程序,叫做“答答租车系统”,是慕课网上的一个综合练习,戳我看原题。



项目要求截图如下:

我的代码(简单粗暴版):

Vehicle.java

public class Vehicle {
String name; //车名
int rent; //租金
int seatingCapacity; //载人量
int cargoCapacity; //载货量 //构造方法,初始化变量
public Vehicle(String newName, int newRent,
int sCapacity, int cCapacity) {
name = newName;
rent = newRent;
seatingCapacity = sCapacity;
cargoCapacity = cCapacity;
} //打印可租车的类型及其价目表
public void Display(int i) {
System.out.print(i + " " + name + " " + rent + " ");
if (seatingCapacity != 0) {
System.out.print("载人:" + seatingCapacity + "人" + " ");
}
if (cargoCapacity != 0) {
System.out.print("载货:" + cargoCapacity + "吨");
} System.out.print("\n");
}
}

Main.java

import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in); Vehicle[] vehicles = new Vehicle[7]; vehicles[1] = new Vehicle("奥迪A4 ", 500, 4, 0);
vehicles[2] = new Vehicle("马自达6", 400, 4, 0);
vehicles[3] = new Vehicle("皮卡雪6", 450, 4, 2);
vehicles[4] = new Vehicle("金龙 ", 800, 20, 0);
vehicles[5] = new Vehicle("松花江 ", 400, 0, 4);
vehicles[6] = new Vehicle("依维柯", 1000, 0, 20); System.out.println("欢迎使用嗒嗒租车系统!");
System.out.println("您是否需要租车?");
System.out.println("是:请输入数字1 不是:请输入数字2"); int y = 0;
if (scan.hasNextInt()) {
y = scan.nextInt();
} //若用户输入数字1,则进入租车流程
if (y == 1) {
int i; System.out.println("您可租车的类型及其价目表:");
System.out.println("序号" + " " + "汽车名称" + " "
+ "租金(元/天)" + " " + "容量"); for (i = 1; i <= 6; i++) {
vehicles[i].Display(i);
} System.out.println("请输入您要租车的数量:"); int n = 0; //记录租车的总数量 if (scan.hasNextInt()) {
n = scan.nextInt();
} int carNO = 0, rentDays = 0; //选择的车序号和租期
int rental = 0, totalPerson = 0, totalCargo = 0;//总租金、总载人数、总载货数
int[] record = {0, 0, 0, 0, 0, 0, 0}; //记录各种车的被租数量
int[] person = {0, 0, 0, 0, 0, 0, 0}; //记录所租车是否可载人
int[] cargo = {0, 0, 0, 0, 0, 0, 0}; //记录所租车是否可载货 for (i = 1; i <= n; i++) {
System.out.println("请输入您要租的第" + i + "辆车的序号"); if (scan.hasNextInt()) {
carNO = scan.nextInt();
}
rental += vehicles[carNO].rent;
record[carNO]++;
if (vehicles[carNO].seatingCapacity != 0) {
person[i] = 1;
}
if (vehicles[carNO].cargoCapacity != 0) {
cargo[i] = 1;
}
} System.out.println("请输入租车天数:");
if (scan.hasNextInt()) {
rentDays = scan.nextInt();
}
rental *= rentDays; System.out.println("************************************");
System.out.print("\n");
System.out.println("您本次租车的账单如下:");
System.out.print("\n");
System.out.println("******你本次共租车" + n + "辆:");
System.out.print("\n");
System.out.println("汽车名字 出租数量"); for (i = 1; i < 7; i++) {
if (record[i] != 0) {
System.out.println(vehicles[i].name + " " + record[i]);
}
} System.out.print("\n");
System.out.println("*****可载人的有:");
System.out.print("\n");
for (i = 1; i < 7; i++) {
if (person[i] != 0) {
System.out.print(vehicles[i].name + " ");
totalPerson += vehicles[i].seatingCapacity;
}
}
System.out.print("\n");
System.out.println("共可载人:" + totalPerson + "人");
System.out.print("\n"); System.out.println("*****可载货的有:");
System.out.print("\n");
for (i = 1; i < 7; i++) {
if (cargo[i] != 0) {
System.out.print(vehicles[i].name + " ");
totalCargo += vehicles[i].cargoCapacity;
}
}
System.out.print("\n");
System.out.println("共可载货:" + totalCargo + "吨"); System.out.print("\n");
System.out.println("*****租车总价格:" + rental + "元");
System.out.print("\n");
System.out.println("************************************");
}
}
}

控制台运行结果:



我的Java之旅——答答租车系统的更多相关文章

  1. 我的Java之旅——答答租车系统的改进

    之前的答答租车系统虽然可以实现项目的要求,但是没有用Java面向对象,今天用面向对象的三大特性封装.继承和多态来改进原来的代码.题目和之前的代码参考上篇博客,这里不再述说. 改进后的代码: Vehic ...

  2. Java练习 SDUT-3349_答答租车系统(面向对象综合练习)

    答答租车系统(面向对象综合练习) Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 各位面向对象的小伙伴们,在学习了面向对 ...

  3. [代码审计]某租车系统JAVA代码审计[前台sql注入]

    0x00 前言 艰难徘徊这么久,终于迈出第一步,畏畏缩缩是阻碍大多数人前进的绊脚石,共勉. 系统是租车系统,这个系统是Adog师傅之前发在freebuf(http://www.freebuf.com/ ...

  4. Java学习笔记三十:Java小项目之租车系统

    Java小项目之租车系统 一:项目背景介绍: 根据所学知识,编写一个控制台版的“呱呱租车系统” 功能: 1.展示所有可租车辆: 2.选择车型.租车量: 3.展示租车清单,包含:总金额.总载货量以及其车 ...

  5. 基于JSP+Servlet开发在线租车系统 java 源码

    运行环境: 最好是java jdk 1.8,我们在这个平台上运行的.其他版本理论上也可以.IDE环境: Eclipse,Myeclipse,IDEA都可以tomcat环境: Tomcat 7.x,8. ...

  6. java学习之租车系统

    ​背景:有三种类型的车供给用户来租用​ ​要求:控制台用户交互界面,根据用户需求输出租车价格,结果如下: 创建租车类主要设计过程: 创建租车类 创建Car父类,包含四种属性成员,重写构造方法 创建三种 ...

  7. Java学习笔记(四)——好记性不如烂键盘(答答租车)

    根据所学知识,编写一个控制台版的租车系统. 功能: 1. 展示所有可租车辆 2. 选择车型.租车辆 3. 展示租车清单,包含:总金额.总载货量及其车型.总载人量及其车型 代码参考imooc中Java课 ...

  8. JAVA之旅(三十五)——完结篇,终于把JAVA写完了,真感概呐!

    JAVA之旅(三十五)--完结篇,终于把JAVA写完了,真感概呐! 这篇博文只是用来水经验的,写这个系列是因为我自己的java本身也不是特别好,所以重温了一下,但是手比较痒于是就写出了这三十多篇博客了 ...

  9. JAVA之旅(三十四)——自定义服务端,URLConnection,正则表达式特点,匹配,切割,替换,获取,网页爬虫

    JAVA之旅(三十四)--自定义服务端,URLConnection,正则表达式特点,匹配,切割,替换,获取,网页爬虫 我们接着来说网络编程,TCP 一.自定义服务端 我们直接写一个服务端,让本机去连接 ...

随机推荐

  1. redis on windows

    https://github.com/MSOpenTech/redis 下载解压 在/bin/release里还有一个压缩包,这个压缩包是生成好的 解压 运行redis-server 乌拉乌拉说了一堆 ...

  2. 自己写一个java的mvc框架吧(一)

    自己写一个mvc框架吧(一) 目录 自己写一个mvc框架吧(一) 自己写一个mvc框架吧(二) 自己写一个mvc框架吧(三) 自己写一个mvc框架吧(四) 写之前的一些废话 废话 1 (总是要先随便说 ...

  3. hdu Rescue 1242

    Rescue Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  4. idea 版本升级至最新版

    前言:当前最新版为官网上的2018.2.3版本 一.下载最新版 官网地址:http://www.jetbrains.com/idea/download/#section=windows 百度网盘地址: ...

  5. CSS相对定位|绝对定位(五)之z-index篇——张鑫旭

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=1855 补充于2016 ...

  6. js中var、let、const区别

    javascript中有三种声明变量的方式:var.let.const 1.var 作用域:全局或局部 var的作用域可以是全局或是局部,以下分四种情况说明: (1).当var关键字声明于函数内时是局 ...

  7. UEditor百度网页编辑器JSP版配置与调试

    最近用公司后台时发现那编辑器还难用,就想着给它换一个.在网上找了下资料也对比了一下,后决定用百度的UEditor. 在UEditor官网下载了一个开发版1.4.3.3Jsp 版本UTF-8编码的压缩包 ...

  8. Vue 实现复制到粘贴板功能

    vue 实现复制到粘贴板功能需要依赖到 clipboard.js 1. 首先需要安装依赖  * 出现错误的话,可以试试 cnpm npm install --save vue-clipboard2 2 ...

  9. CentOS7系列--1.5CentOS7配置vim

    CentOS7配置vim 1. 安装vim [root@centos7 ~]# yum -y install vim-enhanced Loaded plugins: fastestmirror ba ...

  10. 【Android】RxJava的使用(三)转换——map、flatMap

    前两篇Android RxJava的使用(一)基本用法.Android RxJava的使用(二)Action介绍了RxJava的基本用法,对Rxjava还不了解的请先看以上两篇.这篇为大家讲解RxJa ...