gpt4 book ai didi

Java/Groovy double for 语句问题

转载 作者:行者123 更新时间:2023-12-01 17:36:08 26 4
gpt4 key购买 nike

这是一个 Java/Groovy 问题,我正在执行此功能以在我的网站的搜索机制中实现。我有两个列表:

String [] lista = temp.split() // ignore the temp part
String [] searchLista = search.split() // ignore the search part

基本上,列表是这样的:

    lista = {a, b, c, d}
searchLista= {a, b, a, d}
boolean test

我想验证列表“lista”上的任何元素是否与“searchLista”上的相同。为此,我执行了以下功能:

for(int i = 0; i< lista.length-1; i++){

for(int j = 0; j< searchLista.length-1; j++) {

if(lista[i].contains(searchLista[j])){
test = true
##
}
}
}

我的问题是,如果此验证为真:'lista[i].contains(searchLista[j])', boolean 变量测试变为真,接下来我想跳出两个 for。在 ## 位置进行简单的“中断”就可以了吗?

最佳答案

(顺便问一下,您是否故意遗漏了两个列表的最后一个元素?)

普通的 break 语句只会退出内部循环。

如果你想突破两个关卡,有三种常见的选择:

  • 将外循环的条件设置为可以在主体中设置为 false 的条件
  • 将整个循环设为一个方法,然后从中返回
  • 使用带有标签的中断

最后一个选项的示例:

// Code before loop
outerLoop:
for (...) {
for (...) {
if (...) {
break outerLoop;
}
}
}

就我个人而言,我不经常使用标签 - 如果可能的话,我宁愿使用“使整个双循环成为一个方法”选项。

关于Java/Groovy double for 语句问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6126702/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com