gpt4 book ai didi

java 类和数组列表

转载 作者:行者123 更新时间:2023-12-02 00:56:23 25 4
gpt4 key购买 nike

我正在学习java。我的数组列表有问题。
我添加了代码。你能帮我吗?
我创建了一个模型类,它的名称是file。
另外,我添加了 setter 和 getter。
我在主 Activity 中创建了此类的对象,其名称为“saved”。
我在数组列表中添加了一些元素。
但是当我编写数组列表时,所有元素都是最后添加的元素。

''' 
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:意大利语

提前致谢

最佳答案

您要将引用存储在列表中,请在添加到列表之前创建新的已保存对象

List<file> array = new ArrayList<>();

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dosya saved =new file();
saved.setLanguage("English");
saved.setTargetLanguage("Turkish");
saved.setGrade(10);
array.add(saved);

saved =new file();
saved.setLanguage("Spanish");
saved.setTargetLanguage("French");
saved.setGrade(20);
array.add(saved);
saved =new file();
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()));

}
}

关于java 类和数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61339390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com