// class
class Clerk{
private String name;
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;
}
private int age;
public Clerk(String name,int age){
this.name=name;
this.age=age;
}
public Clerk(){
}
}
public void arraylist(){
// 第一种集合 ArrayList
ArrayList al = new ArrayList();
//显示al长度
// System.out.println("al的默认长度是:"+al.size());
//向al中加入数据
Clerk ck1 = new Clerk("宋江",45);
Clerk ck2 = new Clerk("吴用",40);
Clerk ck3 = new Clerk("卢俊义",44);
Clerk ck4 = new Clerk("林冲",30);
//将ck1加入到al等
al.add(ck1);
al.add(ck2);
al.add(ck3);
al.add(ck4);
System.out.println("现在的al的默认长度是:"+al.size());
for(int i=0;i<al.size();i++){
Clerk ck = (Clerk)al.get(i);
System.out.println("al的第"+i+"个元素是:"+ck.getName());
}
}
//vector向量的用法,和ArrayList完全一致,区别在于:
//vector是同步的(安全性更高),ArrayList是异步的;
//vector缺省情况自动增长原来一倍的数组长度,ArrayList增长原来的50%
public void vector(){
Vector vt = new Vector();
Clerk ck5 = new Clerk("阮小二",30);
Clerk ck6 = new Clerk("阮小五",28);
Clerk ck7 = new Clerk("阮小七",26);
vt.add(ck5);
vt.add(ck6);
vt.add(ck7);
for(int i=0;i<vt.size();i++){
Clerk ck = (Clerk)vt.get(i);
}
}
// hashmap的用法
public void hashmap(){
HashMap hm = new HashMap();
Clerk ck8 = new Clerk("解珍",24);
Clerk ck9 = new Clerk("解宝",22);
//按键值存储内容,键值重复则替换原有内容。
hm.put("user1", ck8);
hm.put("user2", ck9);
//判断是否有键值,然后取出对应的内容
if(hm.containsKey("user2")){
Clerk ck = (Clerk)hm.get("user2");
System.out.println("有此人,名叫:"+ck.getName());
}
//hashmap遍历,所有的key和value,使用迭代器。
Iterator it = hm.keySet().iterator();
while(it.hasNext()){
//取key
String key = it.next().toString();
//用key取值
Clerk ck = (Clerk)hm.get(key);
System.out.println("---:"+ck.getName());
}
}
//hashtable的用法,和hashmap完全一致。
// 区别在于hashtable的同步性和线程安全性,hashmap没有同步和线性安全特性,但性能优于hashtable。
// hashmap可以存null,hashtable不行。
public void maptable(){
Hashtable ht = new Hashtable();
}
java集合的使用方法和简单实例
最新推荐文章于 2022-08-17 21:33:22 发布