http://www.runoob.com/java/java-collections.html
左边以接口 右边以实现。
List list = new LinkedList();//便于修改
ArrayList doglist = new ArrayList();//便于访问
打印个数
System.out.println(doglist.size());
存入数据,给数组赋值
doglist.add(dog2);//将dog存入集合
doglist.add(0,dog2);//0代表下标 放在第一个
doglist2.addAll(doglist);//将整个集合装入另一个集合 但是数据会打散
LinkedList list = new LinkedList();
list.addFirst(dog2);//添加到第一个
list.addLast(dog2);//添加到最后一个
便利
for (int i = 0; i < doglist.size(); i++) {
Dog tepm = (Dog) doglist.get(i);//取集合中的数!
System.out.println(tepm.getName());
}
集合比数组的优点
1.
数组length长度定义多少就是多少
集合doglist.size()储存多少就是多少,储存是是真实储存个数
2.
声明不需要定长度
3.
访问速度比数组快
List 与Set 的方法的区别:
set不能重复!
//Set set = new TreeSet();//排序
Set set = new HashSet();//不排序
set.add("ab");
set.add("ac");
set.add("bc");
for (Object object:set) {
System.out.println(object);
}
Map:
Map map = new HashMap();
map.put(key, value);
map.put("CN", "中华人民共和国");//通过key获得value值
System.out.println(map.get("CN"));
map.size();//Map 也有size 不过是键值对
map.containsKey("CNN"); //如果前面有就返回true
map.containsValue("小日本"); //如果前面有就返回true
map.keySet();//取出所有key
map.values();//取出所有value值
map.isEmpty();//
map.clear();//清空
//迭代器
Iterator<Dog> iterator = doglist.iterator();
// Dog dog4 = iterator.next();
// System.out.println(dog4.getName());
while(iterator.hasNext()){//判断下一个有没有数据 有就是true...
Dog temp = iterator.next();
System.out.println(temp.getName());
}
List 和Tree__ 是有顺序的 其他没有顺序
3set和map是不能重复的
List不唯一