import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList; public class demo1 { /**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
//创建雇员管理对象
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);
}
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"))
{
System.exit(0);
}
}
} }
//雇员管理类
class empmanage{
private ArrayList a1 = null;
//构造
public empmanage() {
a1 = new ArrayList();
}
//加入员工
public void addemp(emp emp){
a1.add(emp);
}
//显示员工的相关信息
public void showinfo(String empno) {
//遍历整个ArrayList
for(int i=1;i<a1.size();i++)
{
//去除emp对象
emp emp = (emp)a1.get(i);
//比较编号
if(emp.getEmpNo().equals(empno))
{
System.out.println("找到雇员信息:");
System.out.println("编号= "+emp.getEmpNo());
System.out.println("名字= "+emp.getName());
System.out.println("工资= "+emp.getSal());
}
}
}
//修改工资
public void updatesal(String empno,float newsal) {
for(int i=0;i<a1.size();i++)
{
emp emp = (emp)a1.get(i);
if(emp.getEmpNo().equals(empno))
{
//修改薪水
emp.setSal(newsal);
}
}
}
//删除雇员
public void delemp(String empno) {
for(int i=0;i<a1.size();i++)
{
emp emp = (emp)a1.get(i);
if(emp.getEmpNo().equals(empno))
{
a1.remove(i);
}
}
} } /**
* @author wyl
* 雇员类
*/
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;
} }

java基础 集合 ArrayList 增删改除的更多相关文章

  1. java中集合的增删改操作及遍历总结

      集合的增删改操作及遍历总结

  2. JAVA基础——集合——ArrayList

    ArrayList集合 ArrayList的一些方法(JDK1.8): 将指定的元素附加到列表的末尾,true:添加成功,false:添加失败: public boolean add(E e)    ...

  3. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  4. Java实现mongodb原生增删改查语句

    Java实现mongodb原生增删改查语句 2018-03-16 自动化测试时,需校验数据库数据,为了快速自动化,在代码中用原生增删改查语句操作mongodb 结构 代码 0 pom.xml < ...

  5. Java基础系列-ArrayList

    原创文章,转载请标注出处:<Java基础系列-ArrayList> 一.概述 ArrayList底层使用的是数组.是List的可变数组实现,这里的可变是针对List而言,而不是底层数组. ...

  6. Java基础-集合的嵌套

    Java基础-集合的嵌套 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.静态导入 静态导入是在JDK1.5后的新特性,可以减少开发的代码量,但是实际用处是很一般,静态导入的标准 ...

  7. get,post,put,delete四种基础方法对应增删改查

    PUT,DELETE,POST,GET四种基础方法对应增删改查 1.GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数 ...

  8. JAVA基础-集合(二)

    一.Map整体结构体系 Map是集合的另一大派系,与Collection派系不同的是Map集合是以键值对儿的形式存储在集合的.两个键为映射关系,其中第一个键为主键(主键是唯一的不可重复),第二个键为v ...

  9. java基础: ArrayList集合应用, ArrayList增删改查详解,综合java基础实现学生管理系统,

    1.ArrayList 集合和数组的区别 : 共同点:都是存储数据的容器 不同点:数组的容量是固定的,集合的容量是可变的 1.1 -ArrayList的构造方法和添加方法 public ArrayLi ...

随机推荐

  1. Jsp 错题分析

    ArrayList删除元素通过RemoveAt(int index)来删除指定索引值的元素 运行时异常都是RuntimeException类及其子类异常,如NullPointerException.I ...

  2. UNITY自带的3D object没有三角形?

    有方形,圆形,圆柱,胶囊,就是没有三角形? 这里看代码如何创建mesh http://www.narkii.com/club/thread-369573-1.html http://www.taikr ...

  3. spring的@Transactional

    在service类前加上@Transactional,声明这个service所有方法需要事务管理.每一个业务方法开始时都会打开一个事务.Spring默认情况下会对运行期例外(RunTimeExcept ...

  4. jdbc java数据库连接 5)CallableStatement 接口

    CallableStatement执行存储过程(也是预编译语言) 首先在sql中执行以下带有输入参数的代码: DELIMITER $ CREATE PROCEDURE pro_findById(IN ...

  5. 如何正确使用 Composer 安装 Laravel 扩展包

    我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的: composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害. 因为 composer ...

  6. http、tcp、udp、OAUTH2.0网络协议区别

                    一.先来一个讲TCP.UDP和HTTP关系的 1.TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层. 在网络层有IP协议.ICMP协议.ARP协议.RAR ...

  7. C++中指针数组的分配与释放

    C++中可用new和delete关键字分配和释放内存,但是如果遇到指针数组(或指向指针的指针),分配和释放必须慎重,不然容易造成内存泄漏. 下面用一段代码给出如何使用指向指针的指针来分配和释放内存: ...

  8. 一道有意思的笔试题引发的对于new操作符的思考

    楼主比较喜欢看一些很短但很有意思的题目,无意间又瞥到了一题,大家不妨可以一试.(原题链接猛戳这里) function Fn1() { this.name = 'peter'; return { nam ...

  9. 吉特仓库管理系统- 斑马打印机 ZPL语言的腐朽和神奇

    上一篇文章说到了.NET中的打印机,在PrintDocument类也暴露一些本质上上的问题,前面也提到过了,虽然使用PrintDcoument打印很方便.对应条码打印机比如斑马等切刀指令,不依赖打印机 ...

  10. 梦想成真,喜获微软MVP奖项,微软MVP FAQ?

    之前一直很钦佩那些MVP获奖者,想着自己有一天也能拿到该多好,就在10月1日邮箱收到了微软的邮件,当选了2016年10月份的MVP.今天主要分享一下获奖的喜悦也分享一下如何获得MVP奖项. 什么是微软 ...