簡體   English   中英

(Java)如果從未滿足過for循環中if語句的條件,我該如何打印一條消息,指出“沒有值滿足此條件”?

[英](Java) If the condition for an if statement inside a for loop is never met, how do I print out a message saying “no values meet this criteria”?

所以,我有一個for循環的if語句中。 這個想法是,如果當前時間與更新時間之間的時差大於24小時(86400000毫秒),那么我將打印出索賠編號。

我的if語句如下所示:

 if(difference>86400000){                 
    System.out.println(singleClaim.getString("claimNumber"));
        } 

這就是我的輸出看起來像(帶有一定的地位有24小時以上的時間差索賠號碼列表):

 032394115-01
 032398720-01
 032395941-01
 032398165-01
 032395262-01
 032395350-01
 032392831-01

現在,如果不存在具有一定的地位有超過24小時的時差任何索賠數字,我想我的輸出看起來像這樣:

No claim numbers meet this criteria.

我要如何在那添加呢?

我嘗試這樣做:

if(difference>86400000){                 
    System.out.println(singleClaim.getString("claimNumber"));
        } 
else{
 System.out.println("No claim numbers meet this criteria.");
 }

和更改的數據,以確保沒有要求的數字有差異超過24小時,但是這是我得到了我的輸出(顯示的消息一遍又一遍,而不是要求號碼):

No claim numbers meet this criteria.
No claim numbers meet this criteria.
No claim numbers meet this criteria.
No claim numbers meet this criteria.
No claim numbers meet this criteria.
No claim numbers meet this criteria.

您將必須創建一個標志來告訴您索賠是否滿足條件。 因此,在循環外執行以下操作:

boolean claimMet = false;

並在if語句中:

if(difference>86400000){                 
    System.out.println(singleClaim.getString("claimNumber"));
    claimMet = true;
}

然后循環結束后:

 if (!claimMet) {
     System.out.println("No claim numbers meet this criteria.");
 }

我不確定我是否理解您的意思,但是如果我理解正確,請嘗試回答:

boolean meetCriteria = false;

for(int difference = 0; ; difference++) {
    if(difference>86400000){                 
        meetCriteria = true;
    } 
} 

if(meetCriteria) {
    System.out.println(singleClaim.getString("claimNumber"));
} else {
    System.out.println("No claim numbers meet this criteria.");
}

暫無
暫無

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

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