1.数组可以存储基本数据类型和对象,而集合中只能存储对象(可以以包装类形式存储基本类型)。
2.数组长度固定,集合长度可以动态改变。
3.定义数组时必须指定数组元素类型,集合默认其中所有元素都是Object。
4.无法直接获取数组实际存储的元素个数,length用来获取数组的长度,但可以通过size()直接获取集合实际存储的元素个数。
5.集合有多种实现方式和不同的适用场合,而不像数组仅采用分配连续空间方式。
6.集合以接口和类的形式存在,具有封装、继承和多态等类的特性,通过简单的方法和属性调用即可实现各种复杂操作,大大提高软件的开发效率。
例子:
public class Test {
public static void main(String[] args) {
Map countries = new HashMap();
//使用HashMap存储多组键值对
countries.put("CN", "中华人民共和国");
countries.put("RU", "俄罗斯联邦");
countries.put("FR", "法兰西共和国");
countries.put("US", "美利坚合众国");
//获取指定元素的值
String country = (String) countries.get("CN");
System.out.println("CN对应的国家是:" + country);
//获取Map元素个数
System.out.println("Map中共有"+countries.size()+"组数据");
//删除指定元素,判断是否包含指定元素
countries.remove("FR");
System.out.println("Map中包含FR的key吗?" +
countries.containsKey("FR"));
//显示键集、值集和键值对集
System.out.println( countries.keySet() ) ;
System.out.println( countries.values() );
System.out.println( countries );
}
}
|
|