【发布时间】:2020-04-21 08:45:11
【问题描述】:
我正在学习java。我对数组列表有疑问。
我添加了代码。你能帮我吗?
我创建了一个模型类,它的名称是文件。
另外,我添加了 setter 和 getter。
我在主活动中创建了此类的一个对象,其名称为“已保存”。
我在数组列表中添加了一些元素。
但是当我写arraylist的时候,所有的元素都是最后添加的元素。
'''
public class file {
String language;
String targetLanguage;
int grade;
public String getLanguage() {
return language;
}
public void setLanguage(String language) {
this.language = language;
}
public String getTargetLanguage() {
return targetLanguage;
}
public void setTargetLanguage(String targetLanguage) {
this.targetLanguage = targetLanguage;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
}
public class MainActivity extends AppCompatActivity {
ArrayList<file> array = new ArrayList<>();
dosya saved =new file();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
saved.setLanguage("English");
saved.setTargetLanguage("Turkish");
saved.setGrade(10);
array.add(saved);
saved.setLanguage("Spanish");
saved.setTargetLanguage("French");
saved.setGrade(20);
array.add(saved);
saved.setLanguage("Italian");
saved.setTargetLanguage("Finnish");
saved.setGrade(30);
array.add(saved);
Log.d("result 1", array.get(0).getLanguage());
Log.d("result 2", array.get(1).getLanguage());
Log.d("result 3", String.valueOf(array.get(2).getLanguage()));
}
}
'''
结果: 结果 1:意大利语 结果 2:意大利语 结果 3:意大利语
提前致谢
【问题讨论】:
-
作为一个好的做法,类名的第一个字母应该是大写的。而且,很多库都有一个类“File”,它是一个通用名称。您可以考虑将您的 File 放入一个新的包中,以减少在代码的其他地方使用它时导入错误的 File 类的可能性。