java编写读者类实现增删改查,充值和登录,编号流水自动增长以及按照身份等级进行借书折扣的代码
时间: 2023-12-03 19:47:00 浏览: 39
以下是一个简单的读者类实现,包括增加、删除、修改、查询、充值和登录功能,以及编号流水自动增长和按身份等级进行借书折扣的功能:
```java
import java.util.ArrayList;
import java.util.List;
public class Reader {
private static int nextId = 1;
private int id;
private String name;
private String password;
private double balance;
private int level;
private static List<Reader> readers = new ArrayList<>();
public Reader(String name, String password, double balance, int level) {
this.id = nextId++;
this.name = name;
this.password = password;
this.balance = balance;
this.level = level;
}
public int getId() {
return id;
}
public String getName() {
return name;
}
public String getPassword() {
return password;
}
public double getBalance() {
return balance;
}
public int getLevel() {
return level;
}
public void setName(String name) {
this.name = name;
}
public void setPassword(String password) {
this.password = password;
}
public void setBalance(double balance) {
this.balance = balance;
}
public void setLevel(int level) {
this.level = level;
}
public static List<Reader> getReaders() {
return readers;
}
public static void addReader(Reader reader) {
readers.add(reader);
}
public static void removeReader(int id) {
for (Reader reader : readers) {
if (reader.getId() == id) {
readers.remove(reader);
break;
}
}
}
public static void modifyReader(int id, String name, String password, double balance, int level) {
for (Reader reader : readers) {
if (reader.getId() == id) {
reader.setName(name);
reader.setPassword(password);
reader.setBalance(balance);
reader.setLevel(level);
break;
}
}
}
public static Reader findReader(int id) {
for (Reader reader : readers) {
if (reader.getId() == id) {
return reader;
}
}
return null;
}
public void recharge(double amount) {
this.balance += amount;
}
public boolean login(String password) {
return this.password.equals(password);
}
public double getDiscount() {
switch (level) {
case 1:
return 1.0;
case 2:
return 0.9;
case 3:
return 0.8;
default:
return 1.0;
}
}
}
```
使用示例:
```java
// 添加读者
Reader.addReader(new Reader("Tom", "123456", 100, 1));
// 删除读者
Reader.removeReader(1);
// 修改读者信息
Reader.modifyReader(2, "Jerry", "654321", 200, 2);
// 查询读者信息
Reader reader = Reader.findReader(2);
// 充值
reader.recharge(50);
// 登录
if (reader.login("654321")) {
System.out.println("登录成功");
} else {
System.out.println("登录失败");
}
// 获取折扣
double discount = reader.getDiscount();
```
注意,这只是一个简单的实现,实际应用中可能需要更加完善的设计和实现。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)