Set:不区分顺序,不允许重复
List:有顺序,允许重复
Map:必须配对存放(键值对key-value)
Collection接口定义了存取一组数据对象的方法,子接口Set,List,Map分别定义了存储方式。
1.List例子:
package array;
import java.util.*;
public class TestList {
@SuppressWarnings("unchecked")
public static void main(String[] args) {
List lt = new ArrayList();
for(int i=0; i<7; ++i)
{
lt.add("a"+i);
}
System.out.println("数组为:" + lt);
lt.add("a6");
System.out.println("数组为:" + lt);
}
}
/*
* 运行结果为:
数组为:[a0, a1, a2, a3, a4, a5, a6]
数组为:[a0, a1, a2, a3, a4, a5, a6, a6]
*/
2.HashSet测试
package cn.itheima.day02;
import java.util.*;
public class HasetTest {
/**HashSet不区分顺序,不允许重复
* @param args
*/
public static void main(String[] args) {
Set set = new HashSet();//新建HashSet
set.add("abc");//添加对象
set.add("abc");//添加对象
set.add("abc");//添加对象
set.add("abc");//添加对象
set.add("def");//添加对象
System.out.println(set);
}
}
//运行结果:
//[abc, def]
3.HaseMap测试
package array;
import java.util.*;
public class TestHashMap_1
{
public static void main(String[] args)
{
Map m1 = new HashMap();
m1.put("one", 1);
m1.put("two", 2);
m1.put("three", 3);
System.out.println("1-> " + m1);
System.out.println("2-> " + m1.size());
m1.put(66.6, 'm'); //Map中键和值的类型是任意的,这也是Map强大的重要表现
m1.put(123L, 34);
System.out.println("3-> " + m1.size());
System.out.println("4-> " + m1);
System.out.println(m1.containsKey("three")); //true ontainsKey 不要写成了containKey
System.out.println(m1.containsValue(34)); //true
System.out.println(m1.containsValue(123L)); //false
}
}
/*
1-> {two=2, one=1, three=3}
2-> 3
3-> 5
4-> {two=2, one=1, three=3, 123=34, 66.6=m}
true
true
false
*/