JAVA集合——ArrayList 使用实例
2017-02-26 16:52
423 查看
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import javax.swing.text.html.HTMLDocument.Iterator; public class ListTest2 { private static final int Interge = 0; public static void main(String[] args) throws IOException { EmpManage em = new EmpManage(); //制作控制台 InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br=new BufferedReader(isr); while(true){ System.out.println("请选择你要进行的操作:"); System.out.println("1,增加员工"); System.out.println("2,查找员工"); System.out.println("3,显示所有员工的信息"); System.out.println("4,修改员工薪水"); System.out.println("5,员工离职时将其从系统中删除"); System.out.println("6,按照薪水从高到低输出员工信息"); String operType = br.readLine(); if(operType.equals("1")){ System.out.println("请输入该员工的编号:"); String empNo = br.readLine(); System.out.println("请输入该员工的姓名:"); String name = br.readLine(); System.out.println("请输入该员工的年龄:"); int age = Integer.parseInt(br.readLine()); System.out.println("请输入该员工的薪水:"); float sal = Float.parseFloat(br.readLine()); Emp emp = new Emp(empNo,name,age,sal); em.add(emp); }else if(operType.equals("2")){ System.out.println("请输入该员工的编号:"); String empNo =br.readLine(); em.showInfo(empNo); }else if(operType.equals("3")){ em.showAll(); }else if(operType.equals("4")){ System.out.println("请输入该员工编号:"); String empNo = br.readLine(); System.out.println("请输入该员工的薪水:"); float sal = Float.parseFloat(br.readLine()); em.updateSal(empNo, sal); }else if(operType.equals("5")){ System.out.println("请输入该员工的编号:"); String empNo = br.readLine(); em.remove(empNo); }else if(operType.equals("6")){ em.paixu(); } } } } class EmpManage{ //要管理emp,首先把其放入al容器中 private ArrayList al=null; //构造 public EmpManage(){ al=new ArrayList(); } //1.加入雇员 public void add(Emp emp){ al.add(emp); } //2.根据员工编号,查找员工信息 public void showInfo(String empNo){ for(int i=0;i<al.size();i++){ Emp emp =(Emp) al.get(i); if(empNo.equals(emp.getEmpNo())){ System.out.println("找到该员工了!"); System.out.println("编号:"+emp.getEmpNo()+" 姓名:"+emp.getName()); System.out.println("年龄:"+emp.getAge()+" 薪水:"+emp.getSal()); break; } } } //3.显示所有员工的信息 public void showAll(){ for(int i=0;i<al.size();i++){ Emp emp=(Emp) al.get(i); System.out.println("编号:"+emp.getEmpNo()+" 姓名:"+emp.getName()); System.out.println("年龄:"+emp.getAge()+" 薪水:"+emp.getSal()); } } //4.修改员工薪水 public void updateSal(String empNo,float sal){ for(int i=0;i<al.size();i++){ Emp emp = (Emp) al.get(i); System.out.println("已经进来了,要修改了!!"); if(emp.getEmpNo().equals(empNo)){ System.out.println("已找员工:"+emp.getEmpNo()+" 正在修改其薪水!"); emp.setSal(sal); System.out.println("已将员工"+empNo+"的薪水修改为: "+sal); break; } } } //5.员工离职时将其从系统中删除 public void remove(String empNo){ for(int i=0;i<al.size();i++){ Emp emp = (Emp) al.get(i); if(emp.getEmpNo().equals(empNo)){ //al.remove(i); al.remove(emp); } } } //6.将员工按照薪水从高到低排序输出 public void paixu(){ for(int i=0;i<al.size();i++){ Emp emp1= (Emp) al.get(i); for(int j=i;j<al.size();j++){ Emp emp2 = (Emp) al.get(j); if(emp1.getSal()<emp2.getSal()){ System.out.println("正在排序中!!"); Emp temp= (Emp)al.get(i); emp1=(Emp) al.get(j); emp2=temp; } } } for(int i=0;i<al.size();i++){ Emp emp = (Emp) al.get(i); System.out.println("姓名:"+emp.getName()+"薪水:"+emp.getSal()); } } //7.统计平均工资、最高、最低工资 } class Emp{ private String empNo; public String getEmpNo() { return empNo; } public void setEmpNo(String empNo) { this.empNo = empNo; } 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 float getSal() { return sal; } public void setSal(float sal) { this.sal = sal; } private String name; private int age; private float sal; public Emp(String enpNo, String name, int age, float sal) { super(); this.empNo = enpNo; this.name = name; this.age = age; this.sal = sal; } }
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
1
请输入该员工的编号:
01
请输入该员工的姓名:
唐僧
请输入该员工的年龄:
35
请输入该员工的薪水:
8000
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
1
请输入该员工的编号:
02
请输入该员工的姓名:
悟空
请输入该员工的年龄:
25
请输入该员工的薪水:
7000
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
3
编号:01 姓名:唐僧
年龄:35 薪水:8000.0
编号:02 姓名:悟空
年龄:25 薪水:7000.0
请选择你要进行的操作:
1,增加员工
2,查找员工
3,显示所有员工的信息
4,修改员工薪水
5,员工离职时将其从系统中删除
6,按照薪水从高到低输出员工信息
6
姓名:唐僧薪水:8000.0
姓名:悟空薪水:7000.0
很遗憾,最想完成的第六个功能“按照薪水从高到低 输出信息”的功能没有实现,研究半天没有实现,留着后面再看!现在首要的是熟悉一下ArrayList的用法!
相关文章推荐
- java集合之ArrayList方法的使用实例
- Java 集合系列08之 List总结(LinkedList, ArrayList等使用场景和性能分析)
- Java 集合系列 07 List总结(LinkedList, ArrayList等使用场景和性能分析)
- Java集合:ArrayList使用详解及源码分析
- Java集合系列:-----------06List的总结(LinkedList,ArrayList等使用场景和性能分析)
- Java 集合系列08之 List总结(LinkedList, ArrayList等使用场景和性能分析)
- JAVA中几种常见集合的使用实例
- Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例
- JAVA之旅(十八)——基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用
- java集合的实现类ArrayList的使用
- Java 集合系列之 List总结(LinkedList, ArrayList等使用场景和性能分析)
- JAVA中几种常见集合的使用实例
- Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例
- JAVA之旅(十八)——基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用
- java集合使用——ArrayList
- Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例
- Java 集合系列08之 List总结(LinkedList, ArrayList等使用场景和性能分析)
- 【转】Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例
- Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例
- Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例