0

我有一些嵌套的代码,我想检查它的条件并打印一次语句。但我不知道如何改造for循环或哪个是这个situstin使用的理想循环。我已经写了这个,我正在打印4次你好。我想打印一次..请帮助。如何检查for循环中的条件并打印一次该语句?

countDev = dev.findElements(
       By.xpath("html/body/form/div[2]/div[2]/ul/li")).size(); 
     countProd = prod.findElements(
       By.xpath("html/body/form/div[2]/div[2]/ul/li")).size(); 

     System.out.println(countDev); 
     System.out.println(countProd); 

     if (countDev == countProd) { 

      for (int list = 1; list <= countDev; list++) { 

       if (dev.findElement(
         By.xpath("/html/body/form/div[2]/div[2]/ul/li[" + list 
           + "]/a/span")) 
         .getText() 
         .equals(prod.findElement(
           By.xpath("/html/body/form/div[2]/div[2]/ul/li[" 
             + list + "]/a/span")).getText())) { 


       } 
       System.out.println("Hello!"); 

      } 



     } else { 

      System.out.println("Bye, Bye!"); 

     } 

回答

2

不知道你在努力达到什么目的,但只要在那里放上一个标记,并在打印完成后使其成为真。

boolean printed =false; 
for (int list = 1; list <= countDev; list++) { 
     if (your condtion here) { 
      if(!printed){ 
      System.out.println("Hello!"); 
      printed = true; 
      } 

      } 
    } 
+0

嘿,但是我想让它运行4次,但是打印一次语句。如果“如果条件”为真.. – Vardhan

+0

@Vardhan好的,那么不要打破它。放旗并检查。 –

0

这个循环将执行四次,如果countDev和countProd等于4

for (int list = 1; list <= countDev; list++) 

另外,你的if语句是空的,你的“你好” print语句是if但内循环外

+0

嘿,但我希望它运行4次(或任何计数),但打印一次陈述。如果“if条件”为真.. – Vardhan

+0

如果条件为真,至少一次?或者如果条件全部为真4次?听起来像你需要使用布尔标志 – CDMP

0

Hlo。好友..我不明白你的意思...试试这个代码..

countDev = dev.findElements(
      By.xpath("html/body/form/div[2]/div[2]/ul/li")).size(); 
    countProd = prod.findElements(
      By.xpath("html/body/form/div[2]/div[2]/ul/li")).size(); 

    System.out.println(countDev); 
    System.out.println(countProd); 

    if (countDev == countProd) { 

     for (int list = 1; list <= countDev; list++) { 

      if (dev.findElement(
        By.xpath("/html/body/form/div[2]/div[2]/ul/li[" + list 
          + "]/a/span")) 
        .getText() 
        .equals(prod.findElement(
          By.xpath("/html/body/form/div[2]/div[2]/ul/li[" 
            + list + "]/a/span")).getText())) { 
    System.out.println("Hello!"); 
break; 


      } 

     } 



    } else { 

     System.out.println("Bye, Bye!"); 

    }