list=new ArrayList<String>();
list.add("a");
list.add(1, "b");
list.add(1, "b");
//list.remove(1);
list.add(null);
//list.add(2, "T1");
for(int i=0;i<list.size();i++){
String b=list.get(i);
Log.i(TAG, "list中的数据..."+"i=.."+i+"...等于..."+b);
}
list1=new LinkedList<String>();
list1.add("b");
list1.add(null);
list1.add(1,"list1");
list1.addAll(0,list);
for(int i=0;i<list1.size();i++){
String b=list1.get(i);
Log.i(TAG, "list1中的数据..."+"i=.."+i+"...等于..."+b);
}
由以上运行结果可以得出:
一、.ArrayList和LinkedList
共性如下:
1.允许有重复的元素;
2.允许null元素的存在;
3.皆是线程线程不安全的;
4.可以在同一个位置插入相同的元素(该位置的元素自动移动position+1);
不同点:
1.ArrayList存取数据需要涉及到其他元素的移动,但是取元素直接根据index索引 故:索引数据快,插入数据慢;
2.LinkedList插入数据时只需记住它的前后项元素即可,但是索引数据采用双向链表的方式需要,故:索引数据慢插入数据快;
private void method_Set(){
set=new HashSet();list1=new LinkedList<String>();
list1.add("d");
set.add("a");
set.add("f");
set.add("e");
set.add("a"); //重复的a,set会自动将其去掉
set.add("");
set.addAll(list1);
//Set data=(Set) set.iterator();
Iterator it=set.iterator();
for(Iterator its=set.iterator();its.hasNext();){
Log.i(TAG, "迭代的数据.."+its.next().toString()+"\n");
}
}
由以上代码可得出:
1、 Set是一种不包含重复的元素的Collection,即任意的两个元素e1和e2都有e1.equals(e2)=false
2.、不允许有null元素;
由以上代码可得出:
1.map允许get方法返回的值为null;原因有两个 其一:一种是在集合中没有该键对象
其二:该键对象没有映射任何值对象,即值对象为null
2、在Map集合中不应该利用get()方法来判断是否存在某个键,而应该利用containsKey()方法来判断