java停止点后如何继续循环

我是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;

                             }

                     }

                }

你们能帮我看看为什么我的代码没有按照我想要的方式工作吗?对不起我的英语不好。


皈依舞
浏览 259回答 2
2回答

慕标5832272

我认为您应该检查数组列表中的每个元素。像这样:if (al.get(t).contains("WD"))我猜的解决方案。&nbsp; &nbsp; for (int t = 0; t < al.size(); t++) {&nbsp; &nbsp; &nbsp;if (al.get(t).contains("WD")) {&nbsp; &nbsp; &nbsp; continue;&nbsp; &nbsp; &nbsp; &nbsp;}&nbsp;&nbsp; &nbsp; &nbsp; else {&nbsp; &nbsp; &nbsp; &nbsp;System.out.println("invalid data");&nbsp; &nbsp; &nbsp; &nbsp;continue;&nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp;}&nbsp; &nbsp; }在您的解决方案中,您检查了整个列表。这意味着如果列表中只有一个“WD”,则第一个条件始终为真,而永远不会达到“else”。

拉莫斯之舞

for (int t = 0; t < al.size(); t++) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if (al.contains("WD")) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;continue; // using continue keyword causes the loop to skip an iteration.&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(condtion) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }else if(condtion) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;continue;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }else if(condition) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; continue;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }else if(condition) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; continue;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}else {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;System.out.println("invalid data");&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; continue;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }由于您使用了 continue 关键字,因此将跳过当前迭代。删除continue(那么if条件下检查'WD'的代码会在为真时执行)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java