为了账号安全,请及时绑定邮箱和手机立即绑定

Java 计算布尔数组

Java 计算布尔数组

慕哥6287543 2022-08-17 12:22:38
目前,我正在处理注册表。我有一个方法,可以检查数组中的每个字段,以查看它是否为空,并将结果保存为另一个数组中的布尔值。基本上,用户必须输入他的名字,电子邮件等才能注册。我有一个函数,它检查所有字段是否为空,之后它将结果存储在布尔数组中。如何总结布尔数组的结果?我怎么能做这样的事情?boolean resultOverAll = false;boolean[] validationResultsPerField = new boolean[fields.length];    for (int i = 0; i < validationResultsPerField.length; i++){        if (validationResultsPerField[i] && validationResultsPerField[i+1]){            resultOverAll = true;        }    }显然,我的逻辑不对。
查看完整描述

3 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

基本上,您要检查布尔数组是否全部为真。


public static boolean areAllTrue(boolean[] array) {

    for(boolean b : array) if(!b) return false;

    return true;

}


查看完整回答
反对 回复 2022-08-17
?
九州编程

TA贡献1785条经验 获得超4个赞

必须检查所有数组元素是否都为真。您可以使用 Java 8 Streams 进行函数式编程来完成此任务:


Boolean[] validationResultsPerField = new Boolean[fields.length];

boolean resultOverAll = Stream.of(validationResultsPerField).allMatch(validationResult -> validationResult);



查看完整回答
反对 回复 2022-08-17
?
RISEBY

TA贡献1856条经验 获得超5个赞

这是解决方案。


boolean resultOverAll = true; // lets assume all fields are valid

for (int i = 0; i < validationResultsPerField.length; i++){

    if (!validationResultsPerField[i]){ // if you find any false then break

        resultOverAll = false;

        break;

    }

}


查看完整回答
反对 回复 2022-08-17
  • 3 回答
  • 0 关注
  • 147 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号