集合和列表之间的基本区别在于集合不允许重复 问题是为什么我们不能使用原始for循环来设置我们用于列表
例如:集合和列表的长度相同
for(int i =0 ; i< list.size;i++){
list.get(i);
set.get(i); // here it is throwing an error like get(index ) cant be applied for set
}
但如果我使用advance for循环(对于每个)它的工作
for(Object sample : set){
system.out.println(sample);
}
为什么会发生这种情况...... for循环和每个,set和list之间是否存在操作性差异....
任何帮助和建议都会有用......提前谢谢
答案 0 :(得分:6)
Set
没有订单,因此它没有get(index)
方法。因此,您无法拨打set.get(i)
。
另一方面,增强的for循环适用于任何实现Iterable
(以及数组)的类,其中包含任何Collection
。对于Set
,它将按照依赖于特定Set
实现的顺序迭代元素。