线程同步的:
vector,hashtable
线程不同步的:
hashmap,linkedlist
API这种东西都是死的知识,学API都只是学习怎么用,甚为无趣。
但会用了,在实际应用中会有益处,尤其是一些核心的API。
一Collection
1Cllection 是一个接口,而且还派生出许多子接口,如List 和Set。
2在程序中,一般都用
Collection c = new ArrayList() ;
方式初始化。
因为ArrayList是实现类。
boolean | add(E o) 确保此 collection 包含指定的元素(可选操作)。 | |
boolean | addAll(Collection<? extends E> c) 将指定 collection 中的所有元素都添加到此 collection 中(可选操作)。 | |
void | clear() 移除此 collection 中的所有元素(可选操作)。 | |
boolean | contains(Object o) 如果此 collection 包含指定的元素,则返回 true。 | |
boolean | containsAll(Collection<?> c) 如果此 collection 包含指定 collection 中的所有元素,则返回 true。 | |
boolean | equals(Object o) 比较此 collection 与指定对象是否相等。 | |
int | hashCode() 返回此 collection 的哈希码值。 | |
boolean | isEmpty() 如果此 collection 不包含元素,则返回 true。 | |
Iterator<E> | iterator() 返回在此 collection 的元素上进行迭代的迭代器。 | |
boolean | remove(Object o) 从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。 | |
boolean | removeAll(Collection<?> c) 移除此 collection 中那些也包含在指定 collection 中的所有元素(可选操作)。 | |
boolean | retainAll(Collection<?> c) 仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)。 | |
int | size() 返回此 collection 中的元素数。 | |
Object[] | toArray() 返回包含此 collection 中所有元素的数组。 | |
| toArray(T[] a) 返回包含此 collection 中所有元素的数组;返回数组的运行时类型与指定数组的运行时类型相同。 |
值得一说的是,我总忘记iterator怎么用。
还有collection转为数组的方式。
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
/**
* iterator用法演示代码
* @author 小宇
*/
public class IteratorDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
Collection<String> col = new ArrayList<String>();
col.add("令狐冲");
col.add("乃是");
col.add("豪杰之士");
//返回Iterator接口实现
Iterator<String> iter = col.iterator();
System.out.println("删除: 乃是");
while(iter.hasNext())
{
String s = iter.next();
System.out.print(s);
if(s == "乃是")
iter.remove();
}
System.out.println();
Object[] ss = col.toArray();
System.out.println("删除之后的内容");
for(int i = 0; i <ss.length;i++ )
System.out.print(ss[i]);
}
}