• List和Set区别


    • 1. Set 接口实例存储的是无序的,不重复的数据。List 接口实例存储的是有序的,可以重复的元素。

    • 2. Set检索效率低下,删除和插入效率高,插入和删除不会引起元素位置改变 <实现类有HashSet,TreeSet>

    • 3. List和数组类似,可以动态增长,根据实际存储的数据的长度自动增长List的长度。查找元素效率高,插入删除效率低,因为会引起其他元素位置改变 <实现类有ArrayList,LinkedList,Vector> 。

    另:

    List遍历

     1 public static void main( String[] args ){
     2         
     3         List<String> list=new ArrayList<String>();
     4         list.add("Hello");
     5         list.add("World");
     6         list.add("HAHAHHAHAHHA");
     7         
     8         //第一种遍历方法使用foreach遍历List
     9         for(String str :list){
    10             System.out.println(str);
    11         }
    12         
    13         //第二种遍历,把链表变为数组相关的内容进行遍历
    14         String[] stringArray=new String[list.size()];
    15         list.toArray(stringArray);
    16         for(int i=0;i<stringArray.length;i++){
    17             System.out.println(stringArray[i]);
    18 
    19         }
    20         
    21         //第三种遍历 使用迭代器进行相关遍历
    22         Iterator<String> ite=list.iterator();
    23         while(ite.hasNext()){
    24             System.out.println(ite.next());
    25         }
    26     }

    Map遍历

     1 public static void main(String[] args) {
     2        
     3         Map<String,String> map=new HashMap<String,String>();
     4         map.put("1", "value1");
     5         map.put("2", "value2");
     6         map.put("3", "value3");
     7         
     8         //第一种:普遍使用,二次取值 通过Map.KeySet遍历key和value
     9         System.out.println("通过Map.keySet遍历key和value:");
    10         for(String key:map.keySet()){
    11             System.out.println("key="+key+" value="+map.get(key));
    12         }
    13         
    14         //第二种
    15         System.out.println("通过Map.entrySet使用iterator遍历key和value:");
    16         Iterator<Map.Entry<String,String>> it=map.entrySet().iterator();
    17         while(it.hasNext()){
    18            Map.Entry<String, String> entry=it.next();
    19            System.out.println("value="+entry.getKey()+" and value="+entry.getValue());
    20         }
    21 
    22         //第三种:推荐,尤其是容量大时
    23         System.out.println("通过Map.entrySet遍历key和value");
    24         for (Map.Entry<String, String> entry : map.entrySet()) {
    25             System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
    26         }
    27         
    28         //第四种
    29         System.out.println("不能获取key,只能获取value");
    30         for(String str:map.values()){
    31             System.out.println(str);
    32         }
    33     }
  • 相关阅读:
    Libcurl
    Inno Setup教程
    APICloud平台的融云2.0集成
    关于mysql建立索引 复合索引 索引类型
    linux恢复误删除文件-extundelete
    OpenStack QA
    Android之应用程序怎样调用支付宝接口
    NYOJ 22 素数求和问题
    Mycat(5):聊天消息表数据库按月分表实践,平滑扩展
    opencv对图像进行边缘及角点检測
  • 原文地址:https://www.cnblogs.com/huangjianping/p/7886738.html
Copyright © 2020-2023  润新知