我有一个名为Globals
的类,并且在尝试使用其他类时尝试添加元素,但是我一直遇到java.util.NoSuchElementException
错误。这是我的代码:
ListIterator lit=listOfNames.
while(lit.hasNext())
{
Globals.listOfNames.add(lit.next().toString());
Log.e(TAG, lit.next()+" ");
}
并且我在全局类中将其初始化为:
public static ArrayList<String> ListOfStdntNames=new ArrayList<>();
为什么会引发异常?谢谢您的帮助。
答案 0 :(得分:2)
您正在循环中两次调用next()
函数。在添加期间一次,在Log期间一次。
像这样更改它:
while(list.hasNext()) {
String nextVal = list.next().toString();
Globals.listOfNames.add(nextVal);
Log.e(TAG, nextVal+" ");
}
答案 1 :(得分:0)
首先,您不应该将数组列表定义为静态。
您应该这样做:
在全局类中添加一个方法:
public void AddToArrayList(String yourValue){
yourArrayList.add(yourValue);
}
然后从其他类中调用该方法:
Global global = new Global();
while(list.hasNext()) {
String nextVal = list.next().toString();
global.AddToArrayList(nextVal);
}