java集合练习题 <汽车租赁项目 有详解>
----------该题是汽车租赁系统题目-------------详解在后面----
-------------------------------详解-------------------------------
package qichezulin;
-
--- 第一步 ://创建Car 类 ---
public class Car {
private String brand;// 汽车品牌
private double price;
private String carNum;// 车牌号
private String desc;// 描述
private String color;
public Car(String brand, double price, String carNum, String desc,
String color) {
super();
this.brand = brand;
this.price = price;
this.carNum = carNum;
this.desc = desc;
this.color = color;
}
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getCarNum() {
return carNum;
}
public void setCarNum(String carNum) {
this.carNum = carNum;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
@Override
public String toString() {
return "车品牌 :" + brand + ", 价格:" + price + ", 车牌号:" + carNum + ", 描述:"
+ desc + ", 颜色:" + color;
}
}
-------------------- 第二步 ://创建User 类 ----------------
package qichezulin;
public class User {
private String card;
private int carNumber;// 驾照编号
private String phone;// 手机号
private String address;// 联系地址
private int day;// 租车天数
private int payMoney;// 支付押金
public User(String card, int carNumber, String phone, String address,
int day, int payMoney) {
super();
this.card = card;
this.carNumber = carNumber;
this.phone = phone;
this.address = address;
this.day = day;
this.payMoney = payMoney;
}
public String getCard() {
return card;
}
public void setCard(String card) {
this.card = card;
}
public int carNumber() {
return carNumber;
}
public void setCarNum(int carNumber) {
this.carNumber = carNumber;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getDay() {
return day;
}
public void setDay(int day) {
this.day = day;
}
public int getPayMoney() {
return payMoney;
}
public void setPayMoney(int payMoney) {
this.payMoney = payMoney;
}
@Override
public String toString() {
return "User [card=" + card + ", carNum=" + carNumber + ", phone="
+ phone + ", address=" + address + ", day=" + day
+ ", payMoney=" + payMoney + "]";
}
}
-------------第三步 ://创建Test测试类 ---------
package qichezulin;
import java.util.ArrayList;
import java.util.Scanner;
public class Test {
static ArrayList<Car> list=new ArrayList<Car>();
static ArrayList<Car> listA=new ArrayList<Car>();
static ArrayList<User> listUser=new ArrayList<User>();
static{
list.add(new Car("福特翼博", 300.0, "京A11111", "福特经济实惠", "白色"));
list.add(new Car("奥迪A6", 500, "京A66666", "奥迪稳住有内涵", "黑色"));
list.add(new Car("宝马", 800, "京A888888", "宝马高端大气上档次", "红色"));
}
static Scanner sc=new Scanner(System.in);
public static void welcome(){
System.out.println("----------欢迎使用租车系统:------------");
System.out.println("1,管理员 2,用户 3,退出");
System.out.println("请输入要进入的页面:");
int num=sc.nextInt();
switch(num){
case 1:admin(); welcome();break;
case 2:User(); welcome();break;
case 3:System.exit(0);
}
}
//用户界面
public static void User(){
System.out.println("-----欢迎登陆用户界面-------");
System.out.println("1,租车 2,用户信息 3,退出");
int num=sc.nextInt();
switch(num){
case 1:zu();User();break;
case 2:yonghu();User();break;
case 3:welcome();break;
}
}
//用户租车
public static void zu(){
for(Car i:list){
System.out.println(i);
}
System.out.println("请输入车牌号:");
String carNum=sc.next();
for(Car car:list){
if(car.getCarNum().equals(carNum)){
while(true){
System.out.println("请输入身份证号:");
String card=sc.next();
System.out.println("请输入驾照编号:");
int carNumber=sc.nextInt();
System.out.println("请输入联系电话:");
String phone=sc.next();
System.out.println("请输入联系地址:");
String address=sc.next();
System.out.println("亲输入租期:(单位/天)");
int day=sc.nextInt();
System.out.println("请输入定金:");
int payMoney=sc.nextInt();
listUser.add(new User(card, carNumber, phone, address, day, payMoney));
System.out.println("是否继续添加 Yes/No");
String ok=sc.next();
if(ok.equalsIgnoreCase("no")){
break;
}
}
}
}
}
//用户信息界面
public static void yonghu(){
for(User i:listUser){
System.out.println(i);
}
}
public static void admin(){
System.out.println("------------管理员后台维护-------------");
System.out.println("1,添加新车 2,查询信息 3,修改信息 4,删除车信息 5,退出");
int num=sc.nextInt();
switch(num){
case 1:add();admin();break;
case 2:cha();admin();break;
case 3:xiu();admin();break;
case 4:delete();admin();break;
case 5:welcome();break;
}
}
//添加新车的方法
public static void add(){
while(true){
System.out.println("--添加汽车--");
System.out.println("车的型号名称:");
String brand=sc.next();
System.out.println("车的出租价格:");
double price=sc.nextDouble();
System.out.println("该车的车牌号:");
String carNum=sc.next();
System.out.println("该车的推荐信息:");
String desc=sc.next();
System.out.println("该车的颜色信息:");
String color=sc.next();
list.add(new Car(brand, price, carNum, desc, color));
System.out.println("是否继续添加?yes/no");
String ok=sc.next();
if(ok.equals("no")){
break;
}
}
}
//查询的方法
public static void cha(){
for(Car c:list){
System.out.println(c);
}
}
//修改的方法
public static void xiu(){
System.out.println("请输入车牌号:");
String ss=sc.next();
int count =0;
for(Car c:list){
if(c.getCarNum().equals(ss)){
System.out.println("请输入该车的出租价格:");
double price=sc.nextDouble();
c.setPrice(price);
System.out.println("请输入该车的推荐信息:");
String so=sc.next();
c.setDesc(so);
System.out.println("修改成功!");
count++;
}
}
if(count==0){
System.out.println("没有该车!");
}
}
//删除的方法
public static void delete(){
System.out.println("请输入车牌号:");
String carNum=sc.next();
int count=0;
for(Car i:list){
if(i.getCarNum().equals(carNum)){
listA.add(i);
count ++;
}
}
if(count ==0){
System.out.println("找不到该车");
}else{
list.removeAll(listA);
System.out.println("删除成功!");
}
}
public static void main(String[] args) {
welcome();
}
}