Java 当最后一个字符串被删除时,会导致应用程序崩溃
好的。。这是我的问题。 我有一个stings的列表,里面有10个项目。 然后我随机化列表并在文本视图中显示一个随机字符串。 删除最后一个字符串后,应用程序崩溃。有什么建议可以解决这个问题吗? 代码如下:Java 当最后一个字符串被删除时,会导致应用程序崩溃,java,android,string,arraylist,Java,Android,String,Arraylist,好的。。这是我的问题。 我有一个stings的列表,里面有10个项目。 然后我随机化列表并在文本视图中显示一个随机字符串。 删除最后一个字符串后,应用程序崩溃。有什么建议可以解决这个问题吗? 代码如下: Collections.shuffle(learnlist); showlearntv.setText(learnlist.get(0)); nextlearn.setOnClickListener(new View.OnClickListener() {
Collections.shuffle(learnlist);
showlearntv.setText(learnlist.get(0));
nextlearn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showlearntv.setText(learnlist.get(1));
learnlist.remove(0);
您正试图对可能包含少于两个元素的列表调用get1。 您应该添加一些安全检查。例如:
nextlearn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!learnlist.isEmpty()) {
learnlist.remove(0);
}
if (!learnlist.isEmpty()) {
showlearntv.setText(learnlist.get(0));
}
}
在单击处理程序上,首先删除该项
learnlist.remove(0)
如果列表中有任何项目
showlearntv.setText(learnlist.get(0));
否则,请执行其他操作。在确保learnlist.size>1之前,不要调用learnlist.get1。如果没有项目,请不要删除/获取扫描我以某种方式创建一个文本,其中显示最后一个字符串的列表结尾?您一定得到了异常,对吗?