package test1;
import java.util.*;
public class Demo7_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
LinkedList ll=new LinkedList();
//调用Demo7-2
Emp emp1=new Emp("sa01","aa",1.2f);
//表示把emp1加载链表的最前面
ll.addFirst(emp1);
Emp emp2=new Emp("sa02","bb",1.5f);
ll.addLast(emp2);
for(int i=0;i<ll.size();++i)
System.out.print("\n"+"name:"+((Emp)ll.get(i)).getName());
System.out.print("\n\n"+"emp1="+emp1.getName()+" li="+ll.indexOf(emp1));
emp1.setName("ff");
System.out.print("\n"+"emp1="+emp1.getName()+" li="+ll.indexOf(emp1));
//vector的用法
Vector vv=new Vector();
Emp emp3=new Emp("1","cc",1.3f);
Emp emp4=new Emp("23","dd",1.333f);
vv.add(emp3);
vv.add(emp4);
for(int i=0;i<vv.size();++i)
{
Emp empl=(Emp)vv.get(i);
System.out.print("\n== "+empl.getName());
}
//System.out.print(""+((Emp)vv.get(3)).getName());
Stack stack=new Stack();
stack.add(emp3);
*
* ###HashMap和Hashtable的区别
* HashMap与Hashtable都是Java的集合类,都可以用来存放Java对象。这是他们的
* 相同点,但是他们也有区别:
* 一:历史原因
* Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的
* 一个实现。
* 二:同步性:
* Hashtable是同步的,这个类中的一些方法保证了Hashtable中的对象是线程安全的,
* 而HashMap则是异步的,因此HashMap中的对象并不是线程安全的,因为同步的要求会
* 影响执行的效率。这样可以避免由于同步带来的不必要的性能开锁,从而提高效率。
* 三:值:HashMap可以让你将空值作为一个表的条目的key或value
* 但是Hashtable不能放入空值的(null)
*
*
*
*HashMap hm = new HashMap();
Emp emp8=new Emp("s001","陈平",3.4f);
Emp emp9=new Emp("s002","华融",23.1f);
Emp emp10=new Emp("s003","冤情",23.64f);
//将emp放入到hm
hm.put("s001",emp8);
hm.put("s002", emp9);
hm.put("s003", emp10);
//如果要查找编号是s002
if(hm.containsKey("s002"))
{
System.out.println("======\n");
//如何取出 键《--》值
Emp emp=(Emp)hm.get("s002");
System.out.println("名字"+emp.getName());
}
else
{
System.out.println("没有该员工\n");
}
//遍历HashMap中的所有的key和value
Iterator it=hm.keySet().iterator();//迭代器
//hashNext返回一个boolean值
System.out.println("===开始遍历HashMap====\n");
while(it.hasNext())//HasNext判断是否还有下一个
{
//取出
String key=it.next().toString();
//通过key取出value
Emp emp=(Emp)hm.get(key);
System.out.print("\n名字:"+emp.getName());
}
HashMap mao=new HashMap();
mao.put(null, null);
System.out.println(""+mao.get(null));
//Hashtable
Hashtable ht=new Hashtable();
//ht.get();
//接口
Map map=new HashMap();
}
*
* /#进一步理解集合框架
* java的设计者给我们提供了这些集合类,在后面编程中是相当有用的,具体什么时候用什么集合,
* 要根据我们刚才的分析的集合异同来选取。
* 1.如果要求线程安全,使用Vector,Hashtable
* 2.如果不要求线程安全,应使用ArrayList,LinkedList,HashMap
* 3.如果要求键值,则使用HashMap,Hashtable
* 4.如果数据量比较大,又要线程安全考虑Vector
*
}

1万+

被折叠的 条评论
为什么被折叠?



