package jpack;
import java.util.*;
import java.io.*;
public class Usermanage {
ArrayList a = new ArrayList();
User u= new User();
boolean singal=true;
public void addUser()throws IOException
{
System.out.print("输入要添加的ID:");
BufferedReader In=new BufferedReader(new InputStreamReader(System.in));
String Id=In.readLine();
System.out.print("输入要添加的Name:");
String Name=In.readLine();
System.out.print("输入要添加的Password:");
String Pass=In.readLine();
User u = new User(Id,Name, Pass);
a.add(u);
}
public void display()
{
Iterator i=a.iterator();
while(i.hasNext()){
User u=(User)(i.next());//把它转换为自己的对象
System.out.println("序列表的内容为: "+"ID: "+u.ID +" "+"name: "+u.name+" "+ "password: "+ u.password);
}
}
public void delete(List<User>a,String c,String b)
{
for(int i=0;i<a.size();i++)
{
User p=(User)a.get(i);
if(c.equals("a"))
{
if(p.getName().equals(b))
a.remove(p);
}
if( c.equals("b"))
{
if(p.getId().equals(b))
a.remove(i);
}
}
}
public void del()throws IOException
{
System.out.print("输入要删除的ID:");
BufferedReader In=new BufferedReader(new InputStreamReader(System.in));
String Id=In.readLine();
for(int i=0;i<a.size();i++)
{
User p=(User)a.get(i);
if(p.getId().equals(Id))
{
System.out.println("此ID号对应的信息为:"+"ID: " +p.getId()+" "+ "name: "+ p.getName()+" "+ "password "+p.getPassword() );
System.out.println("确认是否删除此记录,是输入Y,否则输入N:");
String Iden=In.readLine();
{
if(Iden.equals("Y"))
a.remove(i);
//else
// break;
}
singal=false;
}
}
if(singal)
System.out.println("无你要删除的ID信息!");
}
public void Update()throws IOException
{
System.out.print("输入要更新的ID:");
BufferedReader In=new BufferedReader(new InputStreamReader(System.in));
String Id=In.readLine();
for(int i=0;i<a.size();i++)
{
User p=(User)a.get(i);
if(p.getId().equals(Id))
{
System.out.print("输入要更新后的ID:");
String id=In.readLine();
p.ID= id;
System.out.print("输入要添加的Name:");
String Name=In.readLine();
p.name = Name;
System.out.print("输入要添加的Password:");
String Pass=In.readLine();
p.password = Pass;
singal=false;
}
}
if(singal)
System.out.println("无你要找更新的ID信息!");
}
public void searchById()throws IOException
{
System.out.print("输入要查询的ID:");
BufferedReader In=new BufferedReader(new InputStreamReader(System.in));
String Id=In.readLine();
boolean singal=true;
for(int i=0;i<a.size();i++)
{
User p=(User)a.get(i);
if(p.getId().equals(Id))
{
System.out.println("此ID对应的信息为:"+"ID: "+p.getId()+" "+ "name: "+ p.getName()+" "+ "password: "+p.getPassword() );
singal=false;
}
}
if(singal)
System.out.println("无你要找的ID信息!");
else return;
}
public void searchByNameExact()throws IOException
{
System.out.print("输入要查询的Name:");
BufferedReader In=new BufferedReader(new InputStreamReader(System.in));
String Name=In.readLine();
for(int i=0;i<a.size();i++)
{
User p=(User)a.get(i);
if(p.getName().equals(Name))
{
System.out.println("此Name对应的信息为:"+"ID: "+p.getId()+" "+ "name: "+ p.getName()+" "+ "password: "+p.getPassword() );
singal=false;
}
}
if(singal)
System.out.println("无你要找的Name信息!");
}
public void searchByNameSimple()throws IOException
{
System.out.print("输入要查询的Name:");
BufferedReader In=new BufferedReader(new InputStreamReader(System.in));
String Name=In.readLine();
for(int i=0;i<a.size();i++)
{
User p=(User)a.get(i);
if(p.getName().contains(Name))
{
System.out.println("此Name对应的信息为:"+"ID: "+p.getId()+" "+ "name: "+ p.getName()+" "+ "password: "+p.getPassword() );
singal=false;
}
}
if(singal)
System.out.println("无你要查询的Name的信息!");
}
}
用ArrayList实现用户信息的添加,删除,更新,查询



在Java编程中,ArrayList是一个常用的集合类,它继承自AbstractList并实现了List接口。ArrayList以动态数组的形式存储数据,提供了一种高效的方式来管理和操作对象序列。在这个场景中,我们使用ArrayList来实现用户信息的添加、删除、更新和查询功能,这在实际的业务开发中非常常见,特别是对于小型数据集的操作。 **一、添加用户信息** 添加用户信息是通过调用ArrayList的`add()`方法来完成的。假设我们有一个User类,包含如ID、姓名、年龄等属性,我们可以创建User对象并将其添加到ArrayList中。例如: ```java public class User { private int id; private String name; private int age; // 构造器、getter和setter省略 } ArrayList<User> userList = new ArrayList<>(); User user1 = new User(1, "张三", 30); userList.add(user1); ``` **二、删除用户信息** 删除用户信息可以使用`remove()`方法,传入要删除的对象或者索引来执行。如果知道要删除的用户ID,可以通过遍历列表找到对应的User对象再进行删除: ```java int userIdToDel = 1; for (User user : userList) { if (user.getId() == userIdToDel) { userList.remove(user); break; } } ``` 或者直接使用索引,但需确保索引的有效性: ```java int index = 0; // 假设用户信息的索引为0 userList.remove(index); ``` **三、更新用户信息** 更新用户信息通常先找到要更新的用户,然后调用setter方法改变其属性,例如: ```java int userIdToUpdate = 1; for (User user : userList) { if (user.getId() == userIdToUpdate) { user.setName("李四"); // 更新姓名 user.setAge(35); // 更新年龄 break; } } ``` **四、查询用户信息** 查询用户信息可以遍历ArrayList,根据特定条件(如ID、姓名等)筛选出满足条件的用户: ```java int userIdToFind = 2; for (User user : userList) { if (user.getId() == userIdToFind) { System.out.println("找到用户:" + user.getName()); break; } } ``` 以上就是使用ArrayList实现用户信息管理的基本操作。然而,对于大型项目或频繁的增删改查操作,可能需要考虑使用更高效的数据结构,如HashMap(基于键值对,查找速度更快)或数据库来进行数据管理。在实际应用中,我们还应该考虑线程安全问题,尤其是在多线程环境下,可能需要使用Collections.synchronizedList()来同步ArrayList,或者使用CopyOnWriteArrayList避免并发修改引发的问题。此外,为了提高代码的可读性和可维护性,通常会封装这些操作到一个UserManager类中,提供面向对象的接口。


























- 1

- #完美解决问题
- #运行顺畅
- #内容详尽
- #全网独家
- #注释完整
- 华宇1232013-07-08很好,对我有很大帮助
- xuyanbo01232013-01-01适合初学者学习
- luckyqiangge2014-03-26对我有很大帮助 3Q
- lilingli242014-05-28很好呢 都用上了
- li4256805182013-09-19适合初学者学习

- 粉丝: 2
- 资源: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 物联网_Hyperf_号卡分销系统_商业管理平台_1741166037.zip
- 物联网_JavaScript_数据处理_实战指南_1741163780.zip
- mimikatz.zip
- 商城系统_JavaEE_基础实战_Education_1741165240.zip
- 物联网安全_环境与汇编语言资料集_1741162436.zip
- 物联网技术知识库_GetIoTtech_1741164152.zip
- 物流管理_智能快递柜_信息一体化_便捷存取系统_1741166166.zip
- 物联网智能家居开发教程_机智云平台_gokit套件_入门实践_1741162919.zip
- 互联网数据库_手势识别_手工艺产品_电商平台_1741166389.zip
- 智能水务管理平台_物联网系统_1741165672.zip
- dromara_dante-cloud_1741166044.zip
- 物联网_MQTT协议_数据监控_应用架构_1741162340.zip
- 物联网_Golang_轻量级开发平台_HummingBird_1741163726.zip
- 消息推送_CIM_即时通讯_应用框架_1741165443.zip
- 物联网_DC3_开源平台_解决方案_1741163145.zip
- AI人工智能教程&案例-2025.zip


