gpt4 book ai didi

java - Android 中的 ArrayList 最终

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

我想让我的带有自定义对象的ArrayList成为最终对象,以便对象在设置后无法更改。

我试图这样声明它:

private final ArrayList<Datapoint> XML = new ArrayList<Datapoint>();

我用以下几行填充 ArrayList:

FileInputStream fileIn = new FileInputStream(f);
ObjectInputStream in = new ObjectInputStream(fileIn);
XML = (ArrayList<Datapoint>) in.readObject();
in.close();
fileIn.close();

这个 for 循环显示对象:

for(int i=0;i<XML.size();i++){
item = XML.get(i);
parsedData = parsedData + "----->\n";
parsedData = parsedData + "Name: " + item.getName() + "\n";
parsedData = parsedData + "stateBased: " + item.getStateBased() + "\n";
parsedData = parsedData + "mainNumber: " + item.getMainNumber() + "\n";
parsedData = parsedData + "dptID: "+ item.getDptID() + "\n";
parsedData = parsedData + "Groupadress: "+ item.getGroupadress() + "\n";
parsedData = parsedData + "priority: "+ item.getPriority() + "\n";
}

xmlOutput.setText(parsedData);

但是 Eclipse 说无法分配最终字段 XMLDetailsActivity.XML

有什么问题吗?

最佳答案

final 关键字仅意味着对对象的引用不能更改。但这并不意味着您不能调用对象的方法来更改其状态。

这可以通过使用Collections.unmodifyingList()来实现列表。

关于java - Android 中的 ArrayList 最终,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12494152/

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