【发布时间】:2014-03-19 03:36:34
【问题描述】:
我有一个由电影对象填充的数组
每次点击某个按钮时都会创建一个“电影”对象 并根据用户给出的数据给出其属性
问题在于每次创建对象时,所有对象的名称都会更改为最后创建的对象的名称 我的代码有什么问题
public class MovieReg_activity extends Activity {
public static List<movie> movies = new ArrayList<movie>();
String movName ;
int dvdNo ;
int x=0 ;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.mov_reg_layout);
EditText etdvd_no = (EditText)findViewById(R.id.etdvds);
Button btMovie_submit = (Button)findViewById(R.id.btmovsubmit);
// dvdNo = Integer.parseInt(etdvd_no.getText().toString()); // to string then to int :)
btMovie_submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditText etmovie_name = (EditText)findViewById(R.id.etmovname);
movName= etmovie_name.getText().toString();
movies.add(x,new movie(movName , dvdNo) );
String name3= movie.getName() ;
x++ ;
int size =movies.size() ;
Toast.makeText(MovieReg_activity.this, "no of movies added :"+size , Toast.LENGTH_SHORT).show();
}
});
}
}
类电影
public class movie {
public static String name45;
int dvd_no ;
public movie( String name1 , int dvd_no1)
{
this.name45=name1 ;
this.dvd_no = dvd_no1 ;
Log.d("DEBUG", "constructor name1 " + name1);
Log.d("DEBUG", "constructor name45 " + name45);
}
public static String getName()
{
return name45 ;
}
}
【问题讨论】:
-
首先,这段代码看起来不像用“String name3= movie.getName();”行编译没有定义电影对象,除非 getName() 是静态方法?
-
@KarimVarela 编辑并添加了班级电影
标签: android oop object arraylist