List、Set和Map


      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()方法来判断

                                                         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值