📅  最后修改于: 2023-12-03 15:02:07.164000             🧑  作者: Mango
在Java集合中,next()
和hasNext()
都是Iterator接口中的方法,这两个方法在使用Iterator遍历集合时非常常见。虽然这两个方法都与集合的迭代器有关,但它们各自具有不同的用途。
hasNext()
方法是Iterator接口中的一个方法,它用于检查是否还有元素可以遍历。这个方法返回一个布尔值,当集合中还有元素可以遍历时返回true
,否则返回false
。在使用hasNext()
方法时,通常在循环中使用while语句,判断集合是否还有元素可以遍历,如下所示:
List<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Cherry");
Iterator<String> iter = list.iterator();
while (iter.hasNext()) {
String fruit = iter.next();
System.out.println(fruit);
}
在这个例子中,hasNext()
方法被用于检查集合中是否还有元素可以遍历。只有当返回值为true
时,才会进入循环体,并执行next()
方法。
next()
方法也是Iterator接口中的一个方法,它用于获取集合中的下一个元素并将迭代器向后移动。如果没有更多的元素可以获取,next()
方法将抛出NoSuchElementException异常。next()
方法返回集合中的下一个元素,并移动迭代器的位置。在使用next()
方法时,通常在while循环中使用。
List<String> list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Cherry");
Iterator<String> iter = list.iterator();
while (iter.hasNext()) {
String fruit = iter.next();
System.out.println(fruit);
}
在这个例子中,next()
方法用于获取下一个元素。只有当hasNext()
方法返回值为true
时,才会执行next()
方法。
hasNext()
和next()
都是Iterator接口中的方法,它们用于遍历集合中的元素。hasNext()
方法用于检查集合中是否还有更多的元素可以遍历,next()
方法用于获取集合中的下一个元素并将迭代器向后移动。在使用Iterator遍历集合时,必须先使用hasNext()
方法检查集合中是否还有更多的元素,然后再使用next()
方法获取下一个元素。