於是我就到這一點的同時編程循環計數器...兩個'如果不做'其他如果'...?
public void onClick(View view) {
if(mFactBook.number < mFactBook.mFacts.length){
mFactBook.number++;
}
if(mFactBook.number == mFactBook.mFacts.length){
mFactBook.number = 0;
}
String fact = mFactBook.getFact();
//Update label with dynamic fact
factLabel.setText(fact);
int color = mColorWheel.getColor();
relativeLayout.setBackgroundColor(color);
showFactButton.setTextColor(color);
counter.setText("#" + (mFactBook.number + 1));
}
所以基本上這樣做是貫穿並檢查
- 比mFactBook.mFacts.length mFactBook.number少?如果是,則將1添加到mFactBook.number。
- 是mFactBook.number等於mFactBook.mFacts.length?如果是,不是設置mFactBook.number 0
等等
但是當別人如果if語句是如此地結合成一個...
if(mFactBook.number < mFactBook.mFacts.length){
mFactBook.number++;
} else if(mFactBook.number == mFactBook.mFacts.length){
mFactBook.number = 0;
}
...的應用程序在達到mFacts的最大長度後不會將mFactBook.number設置爲0。爲什麼是這樣?我很好奇爲什麼把兩個檢查點放在一起,如果其他語句不起作用,但有兩個單獨的檢查點確實有效。
兩個後果'if'條件不等於'else if' – VinayVeluri 2014-09-05 06:23:56
您可以在輸入此問題所花費的大約1/4時間內通過調試程序運行此操作。 – 2014-09-05 06:28:06
如果可能,請考慮通過選擇最佳答案(如果他們有一個)來考慮關閉其他一些未解決的問題。考慮哪些答案是有用的並且需要贊成。我們需要用戶維護他們的問題,以便該網站可以成爲有問題的下一個人的有效工具。有關最佳做法的更多細節考慮閱讀[提出問題的FAQ(http://stackoverflow.com/faq#howtoask)。 – RossC 2014-09-05 09:27:46