Java 中的冒号是什么意思?我有这个:
public static List<String> findAllAnagrams(List<String> words) {
List<String> result = new LinkedList<String>();
for(String i : words){
for (String j : words){
if (result.contains(i)) {
break;
}
else if (i == j) {
} else {
if (areAnagrams(i,j)){
result.add(i);
System.out.println(result);
}
}
}
}
return result;
}
这意味着一件事,它是一个增强的 for 循环。
for (String i: words)
意思是一样的
for (int i = 0; i < words.length; i++) {
//
}
约书亚·布洛赫,在他值得一读的第 46 项中有效的Java,说如下:
版本 1.5 中引入的 for-each 循环通过完全隐藏迭代器或索引变量来消除混乱和出错的机会。由此产生的习惯用法同样适用于集合和数组:
迭代集合和数组的首选习惯用法
for (Element e : elements) {
doSomething(e);
}
当您看到冒号 (:) 时,将其读作“in”。
因此,上面的循环读作“对于 elements 中的每个元素 e”。请注意,使用 for-each 循环不会造成性能损失,即使对于数组也是如此。事实上,在某些情况下,它可能比普通的 for 循环具有轻微的性能优势,因为它只计算一次数组索引的限制。虽然您可以手动完成此操作(第 45 条),但程序员并不总是这样做。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)