Java 错误:无法转换不兼容的类型对象[ArrayList]
我的for循环声明中出现编译器错误:Java 错误:无法转换不兼容的类型对象[ArrayList],java,for-loop,arraylist,error-handling,syntax-error,Java,For Loop,Arraylist,Error Handling,Syntax Error,我的for循环声明中出现编译器错误:不兼容的类型:无法将对象转换为Type2 我正在尝试这样做: 代码如下: import java.util.ArrayList; public class Test2 { String name; int value; public ArrayList list = new ArrayList<Test2>(); public void q() { for(Test2 w : list) { //
不兼容的类型:无法将对象转换为Type2
我正在尝试这样做:
代码如下:
import java.util.ArrayList;
public class Test2 {
String name;
int value;
public ArrayList list = new ArrayList<Test2>();
public void q() {
for(Test2 w : list) { // Here is the error: 'incompatible types: Object cannot be converted to Test2'
if(w.value == 10)
System.out.println(w.name);
}
}
}
import java.util.ArrayList;
公共类Test2{
字符串名;
int值;
public ArrayList list=new ArrayList();
公共空间q(){
对于(test2w:list){//以下是错误:“不兼容的类型:对象无法转换为Test2”
如果(w.value==10)
System.out.println(w.name);
}
}
}
Java无法知道列表中会出现类型为Test2
的对象;您需要将其参数化。或者显式声明list
为public ArrayList list=new ArrayList()
,或将其强制转换为循环:(test2w:(ArrayList)list)
公共ArrayList list=new ArrayList()
或只是在循环中为
转换列表这是否回答了您的问题?