你是一个Java程序员,请用Java设计一个汽车出租系统,不能使用数据库,只能使用面向对象和数组
时间: 2024-01-24 20:05:06 浏览: 87
好的,我可以给您提供一个简单的Java汽车租赁系统的设计思路:
1. 首先,我们需要定义一个Car类,来存储汽车的属性信息,例如车牌号、品牌、型号、价格等信息。Car类可以包含以下属性:
```java
public class Car {
private String licensePlateNumber; // 车牌号
private String brand; // 品牌
private String model; // 型号
private double pricePerDay; // 每日租金
private boolean isRented; // 是否已被租赁
// 构造函数
public Car(String licensePlateNumber, String brand, String model, double pricePerDay) {
this.licensePlateNumber = licensePlateNumber;
this.brand = brand;
this.model = model;
this.pricePerDay = pricePerDay;
this.isRented = false;
}
// getter 和 setter 方法
// ...
}
```
2. 接着,我们需要定义一个CarRentalSystem类,用于管理汽车租赁系统的各种操作,例如添加汽车、删除汽车、租车、还车等操作。CarRentalSystem类可以包含以下属性和方法:
```java
public class CarRentalSystem {
private Car[] cars; // 存储所有汽车信息的数组
private int numOfCars; // 当前可租赁汽车数量
// 构造函数
public CarRentalSystem(int numOfCars) {
this.numOfCars = numOfCars;
this.cars = new Car[numOfCars];
}
// 添加汽车
public void addCar(Car car) {
for (int i = 0; i < numOfCars; i++) {
if (cars[i] == null) {
cars[i] = car;
break;
}
}
}
// 删除汽车
public void deleteCar(String licensePlateNumber) {
for (int i = 0; i < numOfCars; i++) {
if (cars[i] != null && cars[i].getLicensePlateNumber().equals(licensePlateNumber)) {
cars[i] = null;
break;
}
}
}
// 租车
public void rentCar(String licensePlateNumber) {
for (int i = 0; i < numOfCars; i++) {
if (cars[i] != null && cars[i].getLicensePlateNumber().equals(licensePlateNumber)) {
cars[i].setRented(true);
break;
}
}
}
// 还车
public void returnCar(String licensePlateNumber) {
for (int i = 0; i < numOfCars; i++) {
if (cars[i] != null && cars[i].getLicensePlateNumber().equals(licensePlateNumber)) {
cars[i].setRented(false);
break;
}
}
}
// 显示所有可租赁汽车信息
public void displayAvailableCars() {
System.out.println("所有可租赁汽车信息如下:");
for (int i = 0; i < numOfCars; i++) {
if (cars[i] != null && !cars[i].isRented()) {
System.out.println(cars[i].getLicensePlateNumber() + "\t" + cars[i].getBrand() + "\t" + cars[i].getModel() + "\t" + cars[i].getPricePerDay());
}
}
}
// 显示所有租出去的汽车信息
public void displayRentedCars() {
System.out.println("所有已租出的汽车信息如下:");
for (int i = 0; i < numOfCars; i++) {
if (cars[i] != null && cars[i].isRented()) {
System.out.println(cars[i].getLicensePlateNumber() + "\t" + cars[i].getBrand() + "\t" + cars[i].getModel() + "\t" + cars[i].getPricePerDay());
}
}
}
}
```
3. 最后,在主函数中,我们可以创建一个CarRentalSystem对象,并调用其各种方法来实现汽车租赁系统的各种操作。例如:
```java
public static void main(String[] args) {
CarRentalSystem carRentalSystem = new CarRentalSystem(10); // 创建一个最多可以存储10辆汽车的CarRentalSystem对象
Car car1 = new Car("粤A12345", "奔驰", "GLC 300", 800); // 创建一辆汽车
Car car2 = new Car("粤A67890", "宝马", "X3", 700); // 创建另一辆汽车
carRentalSystem.addCar(car1); // 添加第一辆汽车
carRentalSystem.addCar(car2); // 添加第二辆汽车
carRentalSystem.displayAvailableCars(); // 显示所有可租赁汽车信息
carRentalSystem.rentCar("粤A12345"); // 租赁第一辆汽车
carRentalSystem.displayAvailableCars(); // 再次显示所有可租赁汽车信息
carRentalSystem.displayRentedCars(); // 显示所有租出去的汽车信息
carRentalSystem.returnCar("粤A12345"); // 还车
carRentalSystem.displayRentedCars(); // 再次显示所有租出去的汽车信息
}
```
以上是一个简单的Java汽车租赁系统的设计思路,仅供参考。
阅读全文