有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如果使用java条件失败,则for循环跳过读取行

我想跳过一整行(一次迭代),如果tempVal0不是空的,tempVal1也不是空的。然后,我的指针应该跳过读取该特定行,并开始获取下一组值。注意:这是一个字符串列表,不是excel表格

secmsisdn primrysdn代码

23434853330324 2
234238532340326 2
-85358340325 2

            int forindex=0;  
           for (List<String> tempList : userInputList) {
            List<String> innerList = new ArrayList<String>();
            //DB Variables



            // 0 SecondaryMSISDN
            String tempVal0 = tempList.get(0);
            if(validate.isNumeric(tempVal0)){ 
                innerList.add(tempVal0);
            }else{
                innerList.add("");

            }

            // 1 PrimaryMSISDN
            String tempVal1 = tempList.get(1);
            if(validate.isMSISDN18(tempVal1)){ 
                innerList.add(tempVal1);
            }else{
                innerList.add("");

            }

            // 2 Code 
            String tempVal2 = tempList.get(2);
            if(validate.isShort(tempVal2)){ 
                innerList.add(tempVal2);
            }else {
                innerList.add("");
            }

            bulkUyData.add(innerList);
            forindex++;
        }  

我可以一个接一个地将值添加到innerlist中。但是我想检查列1和列2是否都有值,然后它应该跳过该行


共 (2) 个答案

  1. # 1 楼答案

    在循环中使用continue关键字,这将导致循环跳过当前迭代并转到下一个迭代

    if(condition){
      continue;
    }
    
  2. # 2 楼答案

    如果要跳过当前行,只需使用continue

    如果您想跳过下一行,那么与其使用foreach循环,不如使用迭代器或索引。然后可以向索引中添加1,或在循环中的迭代器中移动1