【发布时间】:2017-11-18 14:09:47
【问题描述】:
我有疑问,我创建了一个具有如下值的对象:Edge edge = new Edge(vertice1, vertice2, weight); 并将其添加到 myEdgesList.add(edge);`
在 Java 中有什么方法可以创建相同的列表,但将 line1 与 line2 倒置,如下所示:Edge edge = new Edge(vertice2, vertice1, weight); 并将其添加到同一个列表中。
LinkedList<Edge> edgesList = new LinkedList<>();
LinkedList<Edge> secondInverted = new LinkedList<>();
CSVReader reader = null;
try {
reader = new CSVReader(new FileReader(csvFile));
String[] line;
while ((line = reader.readNext()) != null) {
Vertex one = findVertexByName(verticesList, line[0]);
Vertex second = findVertexByName(verticesList, line[1]);
edgesList.add(new Edge(one, second, Integer.parseInt(line[2])));
secondInverted.add(new Edge(second, one, Integer.parseInt(line[2])));
}
} catch (IOException e) {
e.printStackTrace();
}
List<Edge> newList = new ArrayList<>(edgesList);
newList.addAll(edgesList);
return newList;
提前谢谢你!
【问题讨论】:
-
当然。你试过什么吗?有没有具体问题?还是您要求我们为您编写代码?
-
答案似乎在问题中......
-
我试过写它,但它在一个列表中有另一个 line2 和 line 1 对象而不是另一个列表。它们必须是内部相同的对象。
-
也许你可以给我看任何例子,拜托
-
可能第一个和第二个对象不一样,因为如果我对所有对象进行硬编码,程序就可以工作