zoukankan      html  css  js  c++  java
  • 关于list集合存储null的问题

    工作中,遇到list集合存储null的问题,不确定list能否存储null值。于是写一些demo测试list,set,table,及map存储null的问题。

    1.list之arraylist

    1 public static void main(String[] args) {
    2        String string= null;
    3        List list= new ArrayList<String>();
    4        System.out.println("size:"+ list.size());
    5        list.add(string);
    6        System.out.println("size:"+ list.size()+ ",list(i):"+list.get(0));
    7 }

    run:

       size:0
       size:1,list(i):null

    总结:arraylist集合是能存储null的。

    2.list之linkedlist

    1 public static void main(String[] args) {
    2       List list= new LinkedList<String>();
    3       System.out.println("list.size():"+list.size());
    4       String string= null;
    5       list.add(string);
    6       System.out.println("list.size():"+list.size()+", list.get(0):"+list.get(0));
    7 }

    run:
       list.size():0
       list.size():1, list.get(0):null

    结论:linkedlist能存储null

    3.set之hashset:

     1 public static void main(String[] args) {
     2         // TODO Auto-generated method stub
     3         Set set= new HashSet<String>();
     4         System.out.println("set.size():"+set.size());
     5         String string= null;
     6         String string2= null;
     7         set.add(string);
     8         for (Iterator<String> it= set.iterator() ; it.hasNext();) {
     9             string2 =  it.next();
    10         }
    11         System.out.println("set.size():"+set.size()+",  set.iterator.next():"+string2);
    12 }

    run:
      set.size():0
      set.size():1,  set.iterator.next():null 

    结论:hashset能存储null

    4.set之treeset (1):

     1 public static void main(String[] args) {
     2            Set set= new TreeSet<String>();
     3            System.out.println("set.size():"+set.size());
     4            String string= null;
     5            String string2= null;
     6            set.add(string);
     7            for (Iterator<String> it= set.iterator() ; it.hasNext();) {
     8                  string2 =  it.next();
     9            }
    10            System.out.println("set.size():"+set.size()+",  set.iterator.next():"+string2);
    11 }

    run:
      set.size():0
     Exception in thread "main" java.lang.NullPointerException
     at java.util.TreeMap.compare(TreeMap.java:1188)
     at java.util.TreeMap.put(TreeMap.java:531)
     at java.util.TreeSet.add(TreeSet.java:255)
     at com.westward.Demo3.main(Demo3.java:15)

    4.set之treeset (2):

    public static void main(String[] args) {
               Set set= new TreeSet<String>();
               System.out.println("set.size():"+set.size());
               String string= "1";
               String string2= null;
               set.add(string);
               for (Iterator<String> it= set.iterator() ; it.hasNext();) {
                     string2 =  it.next();
               }
               System.out.println("set.size():"+set.size()+",  set.iterator.next():"+string2);
    }

    run:
      set.size():0
      set.size():1,  set.iterator.next():1

    结论:treeset不能存储null

    还有map,及table,未完待续...

  • 相关阅读:
    SAP PI 如何实现消息定义查询
    EWM与ERP交互程序
    ITS Mobile Template interpretation failed. Template does not exist
    SAP Material Flow System (MFS) 物料流系统简介
    SAP EWM Table list
    EWM RF 屏幕增强
    SAP EWM TCODE list
    SAP扩展仓库管理(SAPEWM)在线研讨会笔记
    ERP与EWM集成配置ERP端组织架构(二)
    EWM RF(Radio Frequency)简介
  • 原文地址:https://www.cnblogs.com/westward/p/5161411.html
Copyright © 2011-2022 走看看