-1

当一对元素中的一个作为空值输入时,ArrayList 会如何反应?

我的意图是创建一个课程列表和这些课程的分数,但我想知道如果我们不输入课程分数会发生什么。这会引发异常还是仅在该元素位置留下空值?

4

2 回答 2

1

ArrayList 支持 null 值,但您可以尝试 Apache 通用集合库ListUtils#predicatedList,其中返回由给定列表支持的谓词列表。只有通过给定谓词中的测试的对象才能添加到列表中。调用此方法后不要使用原始列表很重要,因为它是添加未验证对象(如null)的后门。

ListUtils.predicatedList(new ArrayList(), PredicateUtils.notNullPredicate());

这里返回列表将被支持ArrayList并且它不支持null值。

于 2012-11-24T18:41:18.673 回答
1

列表没有“对”-我认为您的意思是Map,不是List。列表有单个值,地图有对。

对于给定的键,映射可以具有空值。

Map<String, Integer> coursePoints = new HashMap<String, Integer>();
coursePoints.put("ABC001", 5);
coursePoints.put("XYZ002". null); // OK
于 2012-11-24T19:00:15.217 回答