http://blog.youxu.info/2008/10/30/my-girlfriends-comments-on-programming-langs/

本文通过一位非程序员的角度来评价各种编程语言的特点, 提供了一个有趣且独特的视角, 让我们从新的维度理解这些常见的编程工具。
http://blog.youxu.info/2008/10/30/my-girlfriends-comments-on-programming-langs/
在使用 Java 的 `ArrayList` 实现情侣管理系统时,可以通过创建一个 `Girlfriend` 类来表示女友信息,包含 `ID`、`姓名`、`年龄` 和 `性格` 属性。系统的主要功能包括添加、删除、修改和查询女友信息,同时在添加时需要检查 `ID` 的唯一性。 ### 实现代码 ```java import java.util.ArrayList; import java.util.Scanner; class Girlfriend { private String id; private String name; private int age; private String personality; public Girlfriend(String id, String name, int age, String personality) { this.id = id; this.name = name; this.age = age; this.personality = personality; } // Getter 和 Setter 方法 public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getPersonality() { return personality; } public void setPersonality(String personality) { this.personality = personality; } @Override public String toString() { return "ID: " + id + ", 姓名: " + name + ", 年龄: " + age + ", 性格: " + personality; } } public class GirlfriendManager { private static ArrayList<Girlfriend> girlfriends = new ArrayList<>(); private static Scanner scanner = new Scanner(System.in); public static void main(String[] args) { while (true) { System.out.println("1. 添加女友"); System.out.println("2. 删除女友"); System.out.println("3. 修改女友信息"); System.out.println("4. 查询所有女友信息"); System.out.println("5. 退出"); System.out.print("请选择操作:"); int choice = scanner.nextInt(); scanner.nextLine(); // 清除换行符 switch (choice) { case 1: addGirlfriend(); break; case 2: deleteGirlfriend(); break; case 3: updateGirlfriend(); break; case 4: displayAllGirlfriends(); break; case 5: System.out.println("退出系统。"); return; default: System.out.println("无效的选择,请重新输入。"); } } } private static void addGirlfriend() { System.out.print("请输入女友ID:"); String id = scanner.nextLine(); if (findGirlfriendById(id) != null) { System.out.println("ID已存在,请重新输入。"); return; } System.out.print("请输入女友姓名:"); String name = scanner.nextLine(); System.out.print("请输入女友年龄:"); int age = scanner.nextInt(); scanner.nextLine(); // 清除换行符 System.out.print("请输入女友性格:"); String personality = scanner.nextLine(); Girlfriend gf = new Girlfriend(id, name, age, personality); girlfriends.add(gf); System.out.println("女友信息添加成功。"); } private static void deleteGirlfriend() { System.out.print("请输入要删除的女友ID:"); String id = scanner.nextLine(); Girlfriend gf = findGirlfriendById(id); if (gf != null) { girlfriends.remove(gf); System.out.println("女友信息删除成功。"); } else { System.out.println("未找到该ID对应的女友信息。"); } } private static void updateGirlfriend() { System.out.print("请输入要修改的女友ID:"); String id = scanner.nextLine(); Girlfriend gf = findGirlfriendById(id); if (gf != null) { System.out.print("请输入新的女友姓名:"); String name = scanner.nextLine(); System.out.print("请输入新的女友年龄:"); int age = scanner.nextInt(); scanner.nextLine(); // 清除换行符 System.out.print("请输入新的女友性格:"); String personality = scanner.nextLine(); gf.setName(name); gf.setAge(age); gf.setPersonality(personality); System.out.println("女友信息修改成功。"); } else { System.out.println("未找到该ID对应的女友信息。"); } } private static void displayAllGirlfriends() { if (girlfriends.isEmpty()) { System.out.println("当前没有女友信息。"); } else { for (Girlfriend gf : girlfriends) { System.out.println(gf); } } } private static Girlfriend findGirlfriendById(String id) { for (Girlfriend gf : girlfriends) { if (gf.getId().equals(id)) { return gf; } } return null; } } ``` ### 代码说明 1. **`Girlfriend` 类**:用于表示女友的信息,包含 `ID`、`姓名`、`年龄` 和 `性格` 属性,并提供相应的 `getter` 和 `setter` 方法。 2. **`GirlfriendManager` 类**:实现系统的功能,包括添加、删除、修改和查询女友信息。 - **添加女友**:通过 `addGirlfriend` 方法实现,检查 `ID` 是否唯一。 - **删除女友**:通过 `deleteGirlfriend` 方法实现,根据 `ID` 删除指定的女友信息。 - **修改女友信息**:通过 `updateGirlfriend` 方法实现,根据 `ID` 更新女友的详细信息。 - **查询所有女友信息**:通过 `displayAllGirlfriends` 方法实现,显示所有保存的女友信息。 3. **`findGirlfriendById` 方法**:用于根据 `ID` 查找女友信息,确保 `ID` 的唯一性。 ### 功能验证 1. **添加女友**:用户输入 `ID`、`姓名`、`年龄` 和 `性格`,程序会检查 `ID` 是否唯一,如果唯一则添加成功。 2. **删除女友**:用户输入 `ID`,程序会根据 `ID` 删除对应的女友信息。 3. **修改女友信息**:用户输入 `ID`,程序会更新该 `ID` 对应的女友信息。 4. **查询所有女友信息**:程序会显示所有保存的女友信息。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值