【问题标题】:How to solve java.util.NoSuchElementException: for HashMaps and ArrayLists?如何解决 java.util.NoSuchElementException:HashMaps 和 ArrayLists?
【发布时间】:2016-05-03 21:43:08
【问题描述】:

您好,所以我在两个实例中继续为我的代码使用 java.util.NoSuchElementException

首先: 它说

1)

java.util.ArrayList$ltr 中的 Java.util.NoSuchElementException null

线。我很困惑我是否需要 Hashmap 值和 Arraylist MaxCoPurchase 的迭代器?我只是很困惑。

2)

Java.util.NoSuchElementException 出现以下行: 在 (Java.util.HashMap$HashIterator) 中为空

我再次感到困惑。 如果有人可以帮助我并提出一些建议甚至是代码修复,那就太好了

【问题讨论】:

    标签: java arraylist graph hashmap


    【解决方案1】:
    • 在第一种情况下,maxCoPurchase 集合显然是空的,可能地图也是。
    • 在第二种情况下,maxMap 显然是空的。这是你应该重写的糟糕代码。当您保存最大值时,您还应该以某种方式直接保存其密钥,而不必搜索它。或者至少在你找到它后跳出循环。
    • 在这两种情况下,您应该迭代条目集,而不是迭代键集并调用 get() 来获取关联的值,这会同时为您提供键和值。

    【讨论】:

      【解决方案2】:

      当集合为空(在您的情况下)或它不包含下一个值(尤其是在您迭代它时)时,将引发此异常。

      第一种情况:对 Arraylist "maxCoPurchase" 进行适当的 null 检查将避免此异常。 第二种情况:对 HashMap "maxMap" 进行适当的 null 检查将避免此异常。

      我希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 2019-08-16
        • 1970-01-01
        • 1970-01-01
        • 2017-05-21
        • 1970-01-01
        • 2011-09-11
        • 2019-10-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多