java Repeate数组何时到达最后一个文本?
我对编程非常陌生,我创建了一个应用程序,当按下按钮时会说一个笑话。唯一的问题是当它到达最后一个文本时,应用程序崩溃,因为没有更多的文本可看。我确信当到达最后一个文本时,有一种方法可以从头开始重新启动数组,我只是不知道如何做。任何帮助都将不胜感激
这是我的密码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView line = (TextView) findViewById(R.id.line);
Button bl = (Button) findViewById(R.id.bl);
final String[] jokes = {
"joke 1", "joke 2" , "joke 3" , "joke 4"
};
bl.setOnClickListener(new View.OnClickListener() {
int rando = (int) (Math.random() * 4);
@Override
public void onClick(View v) {
rando++;
line.setText(jokes[rando]);
}
});
}
# 1 楼答案
由于每次单击按钮都会得到一个随机数,因此在访问阵列之前,只需不增加计数器:
另一种选择是一次获取一个随机数,将其存储在一个字段中,然后在每次单击按钮时递增: