package com.test;
import java.util.*; public class Demo7_3 { public static void main(String[] args) {
// TODO Auto-generated method stub LinkedList ll = new LinkedList();
Emp emp1 = new Emp("sa01","aa",1.2f);
Emp emp2 = new Emp("sa02","bb",1.2f); //表示把emp加载链表的最前面
ll.addFirst(emp1);
ll.addFirst(emp2); ll.addLast(emp1);
ll.addLast(emp2); for (int i = 0; i < ll.size(); i++) {
System.out.println(((Emp)ll.get(i)).getName());
} // ll.remove(0);
//
// for (int i = 0; i < ll.size(); i++) {
// System.out.println(((Emp)ll.get(i)).getName());
// }
} } //雇员管理类
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;
} }

Java集合类之LinkedList链表的更多相关文章

  1. java集合之linkedList链表基础

    LinkedList链表: List接口的链接列表实现.允许存储所有元素(包含null).使用频繁增删元素. linkedList方法: void addFirst(E e) 指定元素插入列表的开头 ...

  2. java集合类之LinkedList

    概述 a, 我们知道LinkedList它的数据存储方式是双向链表,基于链表存储的特性, LinkedList具有查询较慢(顺序访问)但增加/删除较快(虽然要遍历到指定位置, 但是相对于数组存储来说不 ...

  3. Java集合类学习-LinkedList, ArrayList, Stack, Queue, Vector

    Collection List 在Collection的基础上引入了有序的概念,位置精确:允许相同元素.在列表上迭代通常优于索引遍历.特殊的ListIterator迭代器允许元素插入.替换,双向访问, ...

  4. java集合类之LinkedList详解

    一.LinkedList简介 由于LinkedList是一个实现了Deque的双端队列,所以LinkedList既可以当做Queue,又可以当做Stack,在将LinkedList当做Stack时,使 ...

  5. Java集合类--温习笔记

    最近面试发现自己的知识框架有好多问题.明明脑子里知道这个知识点,流程原理也都明白,可就是说不好,不知道是自己表达技能没点,还是确实是自己基础有问题.不管了,再巩固下基础知识总是没错的,反正最近空闲时间 ...

  6. 做JavaWeb开发不知Java集合类不如归家种地

    Java作为面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储.但是使用数组存储对象方面具有一些弊端,而Java 集合就像一种容器,可以动态地把多个对象的引用放入容 ...

  7. Java集合类: Set、List、Map、Queue使用场景梳理

    本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E ...

  8. Java集合类: Set、List、Map、Queue使用

    目录 1. Java集合类基本概念 2. Java集合类架构层次关系 3. Java集合类的应用场景代码 1. Java集合类基本概念 在编程中,常常需要集中存放多个数据.从传统意义上讲,数组是我们的 ...

  9. 基础知识《六》---Java集合类: Set、List、Map、Queue使用场景梳理

    本文转载自LittleHann 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E6%8E%92%E5%BA%8F% ...

随机推荐

  1. hibernate--could not initialize proxy - no Session--懒加载问题

    今天在学习hibernate时,出现了以下错误: 错误分析: 如果我们取单个对象可以用get方法没有问题:但是如果我们取的的对象还有关联对象时用get就有问题,因为它不会把关联的对象取出来 参考博客: ...

  2. 使用html5结构化元素

    显示的效果如上边这样,但是有没有发现内容的外侧没有边线(这个难道是因为浏览器不同吗?有待测试) html5中新增加的元素<header>可以明确的告诉浏览器此处是页头,<nav> ...

  3. 【小丸类库系列】Word操作类

    using Microsoft.Office.Interop.Word; using System; using System.Collections.Generic; using System.Dr ...

  4. java集合_collection 中的方法 通过Arraylist来体现

    import java.util.*; /* Collection定义了集合框架的共性功能.1,添加    add(e);    addAll(collection); 2,删除    remove( ...

  5. CENTOS7 使用网络管理器配置静态IP地址

    CENTOS7 的网络配置和CENTOS6有些不同. 如果你想要使用网络管理器来管理该接口,你可以使用nmtui(网络管理器文本用户界面),它提供了在终端环境中配置配置网络管理器的方式. 在使用nmt ...

  6. android xml产生和解析

    public static void writeToXml(Map<String, Object> map,Writer writer) throws Exception, Illegal ...

  7. 实现一个div在浏览器水平居中

    第一种方法: div { margin: 0 auto; width: 960px; } 第二种方法(兼容IE): body { text-align: center; } div { margin: ...

  8. 如何使用命令提示符进入mysql

    如果mysql安装时的路径不是在C盘,应进入mysql的bin目录中,然后在命令提示符中输入“mysql -u USERNAME -pPASSWORD ” 如果如果mysql安装时的路径是在C盘,直接 ...

  9. ubuntu10.04搭建嵌入式开发环境

    改源 配置vim set number set autoindent set smartindent set tabstop=4 set incsearch 安装g++ 配置samba 1.先安装程序 ...

  10. vi 在行首尾添加字符串

    在行首尾添加字符串     用下列命令在文本每行的行首添加字符串“NewString”,请注意空格的存在.      :g/^/s//NewString/g     :%s/^/NewString/g ...