您的位置:首页 > 编程语言 > Java开发

Java集合ArrayList的应用

2016-04-01 21:34 561 查看
/**
*
* @author Administrator
* 功能:Java集合类ArrayList的使用
*/
package com.test;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;

public class Test2 {

public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
//演示
//        String a = new String("abc");
//        String b = new String("abc");
//        //==比较的是字符串的地址,equals比较的字符串的内容
//        if(a == b)
//        {
//            //该句不会被输出
//            System.out.println("OK");
//        }
//        if(a.equals(b)) //a.equals(b)返回的是布尔值
//        {
//            //该句会被输出
//            System.out.println("OK!");
//        }

//创建EmpManage对象
EmpManage em = new EmpManage();

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//作出一个简易菜单
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:退出系统");

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("请输入工资");
float sal = Float.parseFloat(br.readLine());

Emp emp = new Emp(empNo, name, sal);
em.addEmp(emp);
System.out.println("添加成功!");

}
else if(operType.equals("2"))
{
System.out.println("请输入编号");
String empNo = br.readLine();
em.showInfo(empNo);
}
else if(operType.equals("3"))
{
System.out.println("请输入编号");
String empNo = br.readLine();
System.out.println("请输入工资");
float newSal = Float.parseFloat(br.readLine());
em.updateSal(empNo, newSal);
}
else if(operType.equals("4"))
{
System.out.println("请输入编号");
String empNo = br.readLine();
em.delEmp(empNo);
}
else if(operType.equals("5"))
{
//退出系统,终止当前正在运行的Java虚拟机
//参数用作状态码;根据惯例,非 0 的状态码表示异常终止
//-1时Java虚拟机会做检测工资,0的话是正常退出
System.exit(0);
//System.exit(-1);
}
}

}
}

// 雇员管理类
class EmpManage {
private ArrayList al = null;

// 构造函数最主要的作用就是初始化成员变量
public EmpManage() {
al = new ArrayList();
}

// 加入员工
public void addEmp(Emp emp) {
al.add(emp);
}

// 根据员工号显示该员工的相关信息
public void showInfo(String empNo) {
// 遍历整个ArrayList
for (int i = 0; i < al.size(); i++) {
// 取出Emp对象
Emp emp = (Emp) al.get(i);

// 比较编号
if (emp.getEmpNo().equals(empNo)) {
System.out.println("找到该员工,他的信息是");
System.out.println("编号=" + empNo);
System.out.println("名字=" + emp.getName());
System.out.println("工资=" + emp.getSal());
}
}
}

// 修改工资
public void updateSal(String empNo, float newSal) {
for (int i = 0; i < al.size(); i++) {
Emp emp = (Emp) al.get(i);
if (emp.getEmpNo().equals(empNo)) {
// 修改薪水
emp.setSal(newSal);
}
}
}

// 删除员工
public void delEmp(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);
}
}
}
}

// 雇员类
class Emp {

// 学号
private String empNo;
private String name;
private float sal;

// 构造函数
public Emp(String empNo, String name, float sal) {
super();
this.empNo = empNo;
this.name = name;
this.sal = sal;
}

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 float getSal() {
return sal;
}

public void setSal(float sal) {
this.sal = sal;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: