2013-07-30 6 views
-1

ArrayListData Structure을 저장하고 싶습니다.ArrayList에 대한 데이터 구조

public class Node{ 
    private double weight; 
    private int floor; 
    private List<Integer> nodelist= new ArrayList<Integer>(); 
} 

나는 다음과 같은 방법으로이 데이터 구조에 저장하려면 : 따라서, 나는 이미 내가 노드 목록을 저장하고 나중에 나는이 목록을 strore 만하려는 ArrayList 전에 생성 내 데이터 구조는 다음과 ArrayList에서, 나는 다음 줄에 것처럼 :

ArrayList<Node> nl = new ArrayList<Node>(); 
nl.add(new Node(0,1, xy.getnodelist()); 

문제 이제 다음 내가 이렇게하면 내 ArrayList NL에서하여 ArrayList 항상 같은 내가 어디에 내 오류 모른다 입니다. 처음에는 ArrayList으로 만 시도했지만 나중에 Stackoverflow에서 ArrayListsArrayLists에 저장하는 데 사용해야하므로 List로 전환했습니다. 그러나 이것은 나에게 도움이되지 않습니다. 코드

nl.add(new Node(0,1, xy.getnodelist()); 
        ^^^^^^^^^^^^^^^^ 

나는 새로운 목록을 작성하지 않습니다 highighted 부분에서

+0

찾고있는 나에게 소리? – amatellanes

+1

더 명확 할 수 있습니까? – rocketboy

+0

또한 노드 목록을 채우는 데 사용중인 생성자를 게시 할 수 있습니까? –

답변

4

, 그것은 기존 목록에 대한 참조를 반환합니다. 그 이유는 목록이 항상 동일하기 때문입니다 (하나의 목록 만 있고 그 목록이 몇 개 있기 때문에).

는 변수 XY가 정의

nl.add(new Node(0,1, new ArrayList<Integer>(xy.getnodelist())); 
관련 문제