对象数组:
对象数组的长度不可改变,当添加新数据时受限。
类集:动态的对象数组,都是接口,对于这些接口中,collection, map, iterator.
collection:这个存放的是一个个对象, 每次存放单个对象。
map:每次存放一对值,键值对。
Iterator:这个是一个输出接口,每个集合都需要使用它输出。
collection接口,为了清楚的表现数据的存放, 不直接使用这个接口, 但他有两个子接口List, Set.
List接口,它是个接口,要是用的话必须使用子类。他的子类是ArrayList。
ArrayList是扩展自AbstractList并执行List接口。
AbstracList是动态数组,采用异步处理方式。
Vector采用同步处理方式,同步慢效率不高。
使用格式:List all = new ArrayList();(子类对象为辅接口实例化)
向对象中添加数据使用add(Object obj)
容器里默认的类型是object的,要是想之添加int型,或者persion型,class friend;
l.add("abc");
这个里边abc字符串也是对象,是个匿名对象。
同时还可以加对象。
集合操作的主要方法。
想集合中加入数据: puclic boolean add (object obj)
删除方法:public boolean remove(object obj)
为Iterator实例化: public Iterator iterator()
取出元素个数public int size()
LinkedList类,提供了链接列表类。
xxxList基本生都是List子类。
collect还有一个字接口,Set
把List换成Set, 把ArrayList换成HashSet
Set all = new HashSet
基本使用与List一样。
Set和ArrayList的区别是:
1.HashSet子类存放是无序的,(散列存放)
2.List中的数据允许重复元素并保留,Set中的数据不允许有重复元素,重复元素被替换掉。
3.在Set中使用HashSet是散列存放,使用TreeSet是顺序存放。
TreeSet使用compare接口排序。
HashMap:使用情景,键值对。Map作为查找来使用不是用来做输出用的。
TreeMap是用来排序的。
Java中xxxTree都是用来排序的。
比如电话本:
Key Value
张三 123
李四 124
王五125
Map的主要功能作为查找使用。
Put(Object key, Object Valye)
举例如下:
Map m = new HashMap();
m.put("zqc", "123");
m.put("zq2", "124");
Object obj = m.get("zqc");
System.out.println(obj);
Map使用Iterator输出方法,步骤。
Map-> Set -> Iterator -> Map.Entry -> key, Values.
Map.Entry me = (Map.Entry)iter.next();
HashTable和HashMap区别
HashTable使用同步处理方式, hashmap使用异步处理方式。
Properties 是HashTable的子类, 和HashTable区别。
hashtable是保持对象的,Property 主要保存字符串。
setProperty(string key, string value)