[英]Execute an if statement inside a for loop only once
我想用 if 語句和 for 循環檢查表中的每個條目,如果它是真的,只做一次。 例如:
int[][] table = new int[5][5]
int number = 4;
for(int i=0;i<table.length;i++)
{
if(table[i][0] != number)
{
do something;
}
}
因此,如果條目等於數字,它會檢查第一列,如果不等於,則執行“做某事”。 但是我只想在整個列不等於一次而不是每個條目時執行“做某事”。
通過使用一個總是增加的計數器來解決它
if(table[i][0] != number)
為真,如果計數器等於 0,我執行“做某事”。
你可以簡單地打破一個循環。
loop_name: for(int i=0;i<table.length;i++) {
if(table[i][0] != number)
{
do something;
break loop_name;
}
}
在第一次條件變為真之后,“做某事”並打破循環;
嘗試這個
int[][] table = new int[5][5]
int number = 4;
// use this flag to signal the condition violation
boolean flag = false;
for(int i=0;i<table.length;i++)
{
if(table[i][0] == number)
{
flag == true;
break;
}
}
if(!flag) doSomething();
你也可以試試
do {do_stuff; table[i][0] = number;} while (table[i][0] != number);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.