JAVA集合 - ArrayList

Posted 白客C

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA集合 - ArrayList相关的知识,希望对你有一定的参考价值。

集合可实现增删改查,下面的项目用ArrayList集合来做实例,ArrayList集合几个常用的函数

  .size()  集合大小

  .add()  添加对象到集合

  .remove() 删除集合的对象

    用到的其他函数

  .equals()   字符串比较

  System.exit(-1)    退出系统,非零

  1 /*
  2  * 作者:白客C
  3  * 时间:2020年02月28日
  4  * 内容:简单员工管理系统
  5  */
  6 
  7 package com.beekc.www;
  8 import java.io.*;
  9 import java.util.*;
 10 
 11 public class Beekc {
 12     public static void main(String[] args) throws Exception{
 13 
 14         //创建EmpManage
 15         EmpManage em = new EmpManage();
 16 
 17         //输入流
 18         InputStreamReader isr = new InputStreamReader(System.in);
 19         BufferedReader br = new BufferedReader(isr);
 20 
 21         //简易菜单
 22         em.menu();
 23         while (true)
 24         {
 25 
 26             System.out.print("请选择你要进行的操作:");
 27             //接收选择项
 28             String operType = br.readLine();
 29 
 30             if (operType.equals("1")) {
 31 
 32                 System.out.print("请输入编号:");
 33                 String empNo = br.readLine();
 34                 System.out.print("请输入名字:");
 35                 String name = br.readLine();
 36                 System.out.print("请输入工资:");
 37                 Float sal = Float.parseFloat(br.readLine());
 38 
 39                 Emp emp =new Emp(empNo,name,sal);
 40                 em.addEmp(emp);
 41 
 42             }else if (operType.equals("2"))
 43             {
 44                 System.out.print("请输入编号:");
 45                 String empNo = br.readLine();
 46                 em.showInfo(empNo);
 47 
 48             }else if (operType.equals("3"))
 49             {
 50                 System.out.print("请输入编号:");
 51                 String empNo = br.readLine();
 52                 System.out.print("请输入新工资:");
 53                 Float sal = Float.parseFloat(br.readLine());
 54                 em.updateSal(empNo,sal);
 55 
 56             }else if (operType.equals("4"))
 57             {
 58                 System.out.print("请输入编号:");
 59                 String empNo = br.readLine();
 60                 em.delEmp(empNo);
 61 
 62             }else if (operType.equals("5"))
 63             {
 64                 em.showAll();
 65             }
 66         }
 67     }
 68 }
 69 
 70 //雇员管理类
 71 class EmpManage{
 72     private ArrayList al = null;
 73 
 74     //构造函数
 75     public EmpManage()
 76     {
 77         al = new ArrayList();
 78     }
 79 
 80     //菜单
 81     public void menu()
 82     {
 83         System.out.println("1.添加一个雇员");
 84         System.out.println("2.查找一个雇员");
 85         System.out.println("3.修改一个雇员工资");
 86         System.out.println("4.删除一个雇员");
 87         System.out.println("5.查询所有雇员");
 88     }
 89 
 90     //加入员工
 91     public void addEmp(Emp emp)
 92     {
 93         //添加对象到集合
 94         al.add(emp);
 95     }
 96 
 97     //显示员工信息
 98     public void showInfo(String empNo)
 99     {
100         //遍历整个ArrayList
101         for(int i = 0 ; i < al.size() ; i++)
102         {
103             //取出Emp对象
104             Emp emp =(Emp)al.get(i);
105 
106             //比较编号,注意字符串比较用equals()
107             if(emp.getEmpNo().equals(empNo))
108             {
109                 System.out.println("该员工信息是:");
110                 System.out.println("编号:" + empNo);
111                 System.out.println("名字:" + emp.getName());
112                 System.out.println("工资:" + emp.getSal());
113             }
114         }
115     }
116 
117     //显示所有员工信息
118     public void showAll()
119     {
120         for(int i = 0 ; i < al.size() ; i++)
121         {
122             System.out.print("编号	");
123             System.out.print("姓名	");
124             System.out.println("工资");
125         }
126 
127         for(int i = 0 ; i < al.size() ; i++)
128         {
129             Emp emp = (Emp)al.get(i);
130             System.out.print(emp.getEmpNo() + "		");
131             System.out.print(emp.getName() + "		");
132             System.out.println(emp.getSal());
133         }
134     }
135 
136     //修改员工薪水
137     public void updateSal(String empNo ,float newSal)
138     {
139         for(int i = 0 ; i < al.size() ; i++)
140         {
141             Emp emp = (Emp)al.get(i);
142             if(emp.getEmpNo().equals(empNo))
143             {
144                 //修改成功
145                 emp.setSal(newSal);
146             }
147         }
148     }
149 
150     //删除员工
151     public void delEmp(String empNo)
152     {
153         for(int i = 0 ; i < al.size() ; i++)
154         {
155             Emp emp = (Emp)al.get(i);
156             if(emp.getEmpNo().equals(empNo))
157             {
158                 //删除集合里的对象
159                 al.remove(i);
160                 //al.remove(emp);
161             }
162         }
163     }
164     //--------------------------
165 }
166 
167 //雇员类
168 class Emp{
169     //学号
170     private String empNo;
171     //姓名
172     private String name;
173     //薪水
174     private float sal;
175 
176     //构造函数
177     public Emp(String empNo, String name, float sal)
178     {
179         this.empNo = empNo;
180         this.name = name;
181         this.sal = sal;
182     }
183 
184     public String getEmpNo() {
185         return empNo;
186     }
187 
188     public void setEmpNo(String empNo) {
189         this.empNo = empNo;
190     }
191 
192     public String getName() {
193         return name;
194     }
195 
196     public void setName(String name) {
197         this.name = name;
198     }
199 
200     public float getSal() {
201         return sal;
202     }
203 
204     public void setSal(float sal) {
205         this.sal = sal;
206     }
207 }

 

以上是关于JAVA集合 - ArrayList的主要内容,如果未能解决你的问题,请参考以下文章

集合之List总结

ArrayList

ArrayList

Java中“集合”是什么意思?集合类的“集合”

Java集合一 集合框架

廖雪峰Java5Java集合-1Java集合简介-1Java结合简介