簡體   English   中英

如何在循環中跳過打印語句

[英]How to skip a print statement in loop

我有兩個名為Test1和Test2的類。

class Test1{
    public void exe1(){
        System.out.println("Execute only one time");
        System.out.println("Execute iterations");
        System.out.println("Execute only last time");
    }
}

class Test2{
    public statuc void main(String args[]){
        Test1 ts = new Test1();
        for(int i=0 ; i<=3;i++){
            ts.exe1();
        }
    }
}

該結果的輸出將是:

Execute only one time
Execute iterations
Execute only last time
Execute only one time
Execute iterations
Execute only last time
Execute only one time
Execute iterations
Execute only last time

在Java中我得到的輸出是否應該是:

Execute only one time
Execute iterations
Execute iterations
Execute iterations
Execute only last time

我的意思是第一個print語句應該在第一時間執行,然后可以打印迭代次數,最后我的最后一個print語句應該執行。

public void exe1(int i){
    if(i==0) System.out.println("Execute only one time");
    if(i==3) System.out.println("Execute only last time");
    else System.out.println("Execute iterations");
}

for(int i=0 ; i<=3;i++){
    ts.exe1(i);
}

在循環中使用i作為函數參數。

嘗試使用兩個參數來檢查是否應打印文本

public void exe1(int counter, int totalCount){
   if (counter == 0) System.out.println("Execute only one time");
   System.out.println("Execute iterations");
   if (counter == totalCount) System.out.println("Execute only last time");
}

for(int i=0 ; i<=3;i++){
   ts.exe1(i,3);
}
class Test1 {
public void exe1(boolean isFirst, boolean isLast) {

    if (isFirst) {
        System.out.println("Execute only one time");
    } else {
        if (isLast) {
            System.out.println("Execute only last time");
        } else {
            System.out.println("Execute iterations");
        }
    }
}
}

public class Test2 {
public static void main(String args[]) {

    Test1 ts = new Test1();

    for (int i = 0; i <= 3; i++) {

        if (i == 0) {
            ts.exe1(true, false);
        } else {

            if (i == 3) {
                ts.exe1(false, true);
            } else {
                ts.exe1(false, false);
            }
        }
    }
}
}
  class Test1{
      public void exe1(int i){
          If(i==0)
              System.out.println("Execute only one time");
          If(i>0 && i<3)
              System.out.println("Execute iterations");
          Else
              System.out.println("Execute only last time");

    }
}

順便說一句,下次請以適當的方式格式化代碼並檢查錯誤。 如果按原樣運行,它將無法編譯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM