java 迭代器 hasNext()方法的使用

Java中,迭代器(Iterator)是用于遍历集合的接口。它定义了一些方法来访问集合中的元素。其中,hasNext()方法是Iterator接口中的一个方法。

hasNext()方法返回一个布尔值,用于判断是否还有下一个元素可以遍历。当迭代器指向的位置有下一个元素时,hasNext()方法返回true;当迭代器指向的位置已达到集合的末尾,没有下一个元素时,hasNext()方法返回false。

在使用迭代器进行遍历时,我们通常会先使用hasNext()方法来判断是否还有下一个元素可以遍历。如果hasNext()方法返回true,则可以调用next()方法来获取下一个元素。如果hasNext()方法返回false,则表示已经遍历到了集合的末尾,没有下一个元素可用。

以下是一个示例代码,演示了如何使用迭代器的hasNext()方法:

List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);

Iterator<Integer> iterator = numbers.iterator();
while (iterator.hasNext()) {
    Integer number = iterator.next();
    System.out.println(number);
}

在上述示例中,numbers是一个包含整数的列表。我们使用迭代器初始化了iterator对象,并通过hasNext()方法来判断是否还有下一个整数可以访问。如果有,我们通过next()方法获取下一个整数,并将其打印出来。输出结果将会是1 2 3。

和json文件格式解析结合起来

 JSONObject jsonObject = JSON.parseObject(jsonObjectString);
 if (jsonObject == null) {
     return map;
     }
 Iterator it = jsonObject.keySet().iterator();
 while (it.hasNext()) {
        String buName = it.next().toString();
        Double weightValue = jsonObject.getDoubleValue(buName);
        map.put(buName, weightValue);
        }