自己对List,Set,Map等集合类的理解

以下是自己写的Java代码:
package com.softceo.test;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
*
* @author softceo945
*
*/
public class Test {

/**
* @param args
*/
public static void main(String[] args) {
//testListInterface();
//testSetInterface();
testMapInterface();
}

/**
* 测试List接口
* List接口可按索引访问集合中的元素,是有序的集合,允许重复的元素
* 实现类有ArrayList,LinkedList,这两个都是非线程安全的(异步的),允许null元素
* 实现类有Vector,是线程安全的List实现类,Stack是vector的子类
*
*/
public static void testListInterface(){
List<Object> list=new ArrayList<Object>();
list.add(1);
list.add("2");
list.add(1);
list.add(null);
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}

/**
* 测试Set接口
* Set接口不包含重复的元素,最多只能允许有一个null元素,是无序的列表
* Set的实现类有HashSet,TreeSet以及子类LinkedHashSet,这三个类是非线程安全的
*/
public static void testSetInterface(){
Set<Object> set=new HashSet<Object>();
set.add(1);
set.add("2");
set.add("3");
set.add(4);
set.add(1);
set.add(null);
Object[] obj=set.toArray();
for (int i = 0; i < obj.length; i++) {
System.out.println(obj[i]);
}
}

/**
* 测试Map接口
* Map是一种把键对象与值对象关联的容器,键对象不允许重复
* Map的实现类有HashMap,IdentityHashMap,WeakHashMap,TreeMap,以及LinkedHashMap子类,这些类都是非线程安全的,
* HashMap中允许使用 null 值和 null 键
*/
public static void testMapInterface(){
Map<Object, Object> map=new HashMap<Object, Object>();
map.put(1, "1");
map.put(1, "2");
map.put(2, null);
map.put(null, null);
for(Object o:map.keySet()){
System.out.println(map.get(o));
}
}

/**
* HashTable是线性安全的,HashTable不能插入null空元素,其他和HashMap大致相同
*/
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值