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

java停止点后如何继续循环

java停止点后如何继续循环

皈依舞 2021-12-10 16:15:10
我是java初学者。我被分配了一项任务来进行检查。基于我存储在 arraylist 中的这个表。我的数组列表是 2d 的形式。WEEK 1| SUN  | WD | AV | MON  | -  | -  | TUE  | WD | AV  | ...WEEK 2| SUN  | -  | -  | MON  | WD | AV | TUE  | WD | AV  | ...WD:工作日 AV:可用我必须检查所有 WD 和 AV 是否都有效。但现在我有循环问题。我的问题是,当迭代器找到字符串“WD”并且条件的结果为 TRUE 时,我的循环将在那里停止。我希望它继续迭代以搜索下一个“WD”而不是包含在同一行中,并继续下一行以继续进行检查。我所有的数据都是字符串类型。           for (int t = 0; t < al.size(); t++) {                    if (al.contains("WD")) {                         continue;                        if(condtion) {                          }else if(condtion) {                           continue;                          }else if(condition) {                            continue;                          }else if(condition) {                            continue;                         }else {                           System.out.println("invalid data");                            continue;                             }                     }                }你们能帮我看看为什么我的代码没有按照我想要的方式工作吗?对不起我的英语不好。
查看完整描述

2 回答

?
慕标5832272

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

我认为您应该检查数组列表中的每个元素。像这样:


if (al.get(t).contains("WD"))

我猜的解决方案。


    for (int t = 0; t < al.size(); t++) {

     if (al.get(t).contains("WD")) {

      continue;

       } 

      else {

       System.out.println("invalid data");

       continue;

      }

     }

    }

在您的解决方案中,您检查了整个列表。这意味着如果列表中只有一个“WD”,则第一个条件始终为真,而永远不会达到“else”。


查看完整回答
反对 回复 2021-12-10
?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

for (int t = 0; t < al.size(); t++) {


                    if (al.contains("WD")) {

                         continue; // using continue keyword causes the loop to skip an iteration.

                        if(condtion) {

                          }else if(condtion) {

                           continue;

                          }else if(condition) {

                            continue;

                          }else if(condition) {

                            continue;

                         }else {

                           System.out.println("invalid data");

                            continue;

                             }

                     }

                }

由于您使用了 continue 关键字,因此将跳过当前迭代。删除continue(那么if条件下检查'WD'的代码会在为真时执行)


查看完整回答
反对 回复 2021-12-10
  • 2 回答
  • 0 关注
  • 258 浏览

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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