java - 用空值填充数组

标签 java arrays collections

也许这是一个简单的问题。 但是,我想知道为什么我们不能用空值填充数组或集合? 请看这样简单的例子:

public static void main(String[] args) {

   Map<String, Object> map = new HashMap<>();
   map.put("first",null);
   map.put("first1",new BigDecimal(1.5));
   map.put("first2",new BigDecimal(2.5));
   map.put("first3",new BigDecimal(3.5));


   String[]array1 = new String[map.values().size()];
   Object[]array2 = new Object[map.values().size()];

   int counter = 0;

   for(Map.Entry<String,Object> entry: map.entrySet()){

       String header = entry.getKey();
       Object value = entry.getValue();

       array1[counter] = header;
       array2[counter] = value;

       counter++;

   }
}

我很高兴听听您的目的。

最佳答案

对象数组在实例化时会填充null值。另一方面,集合一开始就是空的,所以一开始就没有什么可以“填充”的——好吧,如果你愿意,你可以用 null 值填充它们,但是会是什么呢?重点是什么?仅根据需要将元素添加到集合中,用null值填充它是没有意义的(并且并非所有集合都允许这样做,它取决于类型)。

关于java - 用空值填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19099404/

相关文章:

java - 如何从其他数组中获取相同的索引值?

javascript - 将对象数组中的元素附加到内部对象数组

arrays - Clojure 表示字节数组

java - 在 java 中使用 ArrayList 时的深拷贝

Java - 为遗留系统生成 XML

java - 如何在List数组中找到int元素

java - paint、paintComponent、repaint等之间的关系

PHP - 按动态键数对数组进行分组

java - 在不覆盖 hashCode() 的情况下删除重复项

ruby-on-rails - Will_Paginate - 如何获取所有分页对象 ID 的数组?