루프의 arraylist에 Document 클래스의 객체를 추가하려고합니다. 문제는 모든 시간이 개체 변경, 목록의 prevous 내용값을 기준으로 arraylist에지도를 추가하는 방법
여기에 너무 변경 내 문서 클래스라는 것이다 :
public class Document {
public Map<String, Double> tokens;
public String category;
}
나는 목록 데이터 세트가 있습니다
List<Document> dataset = new ArrayList<Document>();
I을 파일의 모든 토큰을 counts라는 맵으로 읽습니다. 다음과 같이하면
doc = new Document();
doc.tokens = counts;
doc.category=sampleCategory;
dataset.add(doc);
counts.clear();
하지만 새로운 문서를 읽을 때마다 데이터 세트의 내용이 새 문서의 값으로 변경됩니다. 그래서 참조없이 값으로 문서를 추가 할 수 있습니까?
'Document' 개체의 복사본을 만드는 방법을 묻고 있습니까? –
Java에서는 값으로 객체를 전달할 수 없습니다. ** 참조 ** 개체를 값으로 전달합니다. – m0skit0
[Java가 "참조로 전달"인가 "값으로 전달"인가?] (http://stackoverflow.com/questions/40480/is-java-pass-by-reference-orpass) -by-value) – m0skit0