是否有可能使用for-EAPE循环以及如何迭代单个迭代中的下一个元素



我开始通过for-each循环替换for循环,但我不知道我们是否可以通过for-east循环替换以下情况。

示例代码:

String[] names = {"", ""};
for(int i =0; i<names.length - 1; i++) {
    if(names[i].equals(names[i+1]))
        break;
}

使用for-each循环,我们可以一次迭代一个元素,例如

for(String name : names){
    System.out.println(name);
}

任何人都可以帮我。谢谢。

更新:

寻找以下代码段的通用解决方案:

boolean flag = false;
    for(int i=0; i<names.length-1; i++) {
        // logic
        for(int j=i+1; j<names.length; j++) {
            if(names[i].equalsIgnoreCase(names[j])) {
                flag = true;
                break;
            }
        }
        if(flag){
            break;
        }
    }

是否可以通过增强的循环?

替换上面的循环

类似的东西?

String lastName = null;
for (String name : names) {
  if (name.equals(lastName))
    break;
  lastName = name;
}
Iterator iter = Arrays.asList(names).iterator();
iter.next();
for(String name:names) {
    if(iter.hasNext()&&name.equals(iter.next()))
    {
        System.out.println(name);
        break;
    }
}

最新更新