我想覆盖列表中每部电影的标题
我试图使x
静态和最终,但编译器抱怨。
List<Movie> mList = new ArrayList<Movie>();
for(int i = 0; i < 5; i++)
{
int x;
mList.add(new Movie(){
toString(){
// need an easy way to give a unique string to each movie here.
return "Movie" + x;
}
}
}
答案 0 :(得分:6)
这应该有效:
List<Movie> mList = new ArrayList<Movie>();
for (int i = 0 ; i < 5 ; i++) {
final int x = i; // or anything else, but you must assign it some value
mList.add(new Movie() {
@Override
public String toString(){
return "Movie" + x;
}
});
}
您无法生成x
static
- static
修饰符仅用于类的数据字段(或方法)。此外,x
必须确实为final
,以便允许匿名类的toString
方法访问它。