java - 如何在中断之前检查数组中的每个元素
问题描述
if((Integer.parseInt(indexesString[i]) > 0 && Integer.parseInt(indexesString[i]) <= 12)) {
break outerloop;
}
如何IndexesString
在中断前检查所有元素是否在 1 到 12 之间?现在它只检查第一个元素是否在 1 到 12 之间,然后中断而不检查其余元素是否有效。
"1 13" should not break
"1 12" should break
编辑:输入是一个字符串。例如“1”或“1 2 12”,每个数字都分成单独的字符串。
解决方案
尝试使用流 api 中的函数。代码如下:
import java.util.List;
import java.util.ArrayList;
public class Between {
public static void main(String[] args) {
List<String> indexesString = new ArrayList<String>() {{
add("1");
add("9");
add("4");
}};
if (indexesString.stream().allMatch(s -> 0 < Integer.parseInt(s) && Integer.parseInt(s) <= 12)) {
System.out.println("break!!!");
} else {
System.out.println("something happened");
}
}
}
推荐阅读
- javascript - 在另一个组件 Vue.js 中调用状态
- android - 尽管设置了代理明确,但在代理后面运行的颤动无法下载 gradle 依赖项
- reactjs - 使用 Reactjs 选择选项
- python - 如何对获胜者分数的文本文件进行排序以打印前 5 名获胜者?
- mysql - 如何在 mySql JSON 查询中转义句点
- selenium - webdriver-manager 无法启动 - 错误:spawn cmd ENOENT
- continuous-integration - GitHub azure/webapps-deploy@v2 - 使用 ZIP 部署的包部署失败
- android - 如何检查 Flutter 中的 Future 变量是否发生了变化?
- java - Android工作室评论发布页面不起作用
- python - Odoo:更新one2many字段上的记录时触发on_change?