于是我就到这一点的同时编程循环计数器...两个'如果不做'其他如果'...?
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