[英]Adding ArrayList items to a user-defined class with final values in Java
我有一个包含数千行数据的文本文件,如下所示:
38.48,88.25
48.20,98.11
100.24,181.39
83.01,97.33
我可以很好地分隔每个“双精度”值,但是在将每一行添加到用户定义的类时遇到了麻烦。 在我的主要方法中,我通过以下方式创建了一个列表:
List<Pair> data = new ArrayList<Pair>();
配对定义为:
class Pair {
private final double first;
private final double second;
public Pair(double first, double second) {
this.first = first;
this.second = second;
}
现在,我试图将项目添加到此列表中。 我试过:“ data.add(double,double)”,但这不起作用。 我尝试在Pair类中创建一个set方法,但是由于“ first”和“ second”被声明为“ final”,因此它不允许我这样做。 我知道我可以更改它们,但我确实希望它们成为最终价值。 那么如何将一个项目添加到此列表中?
将List
声明为List<Pair>
,需要将Pair
对象添加到该List
。 您需要创建一个Pair
实例,该实例将double值传递给其构造函数,然后将该实例add
到List<Pair> data
。
Pair pair = new Pair(doubleValue,doubleValue);
data.add(pair);
请仔细阅读List
的文档,它为您提供了两种add
方法来分别向List
添加元素。
添加到Noob提到的内容中。 Java中的List或任何其他集合不适用于原语。 集合存储对象。 因此,您需要创建类对的对象,该对象将包含第一个和第二个属性的详细信息。 您可以将Pair对象表示的多行读取文件存储在列表中,如下所示:
List<Pair> data = new ArrayList<Pair>();
Pair pair = new Pair(first,second);
data.add(pair);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.