2012-06-18 2 views
-2

ArrayList에 개체를 저장하는 데 문제가 있습니다.ArrayList 관련 문제

ArrayListVariable이라는 간단한 개체를 채우고 싶습니다. 그것에는 2 개의 문자열 속성이 있습니다 : 이름과 값. 문제는 목록에 새로운 Variable 개체를 추가 할 때 이전에 추가 된 Variable 개체의 특성이 null 인 것으로 나타납니다. 또한 목록 끝에 추가되는 대신 새 개체가 첫 번째 위치에 삽입됩니다.

ArrayList<Variable> variables = new ArrayList<Variable>(); 

Variable author = new Variable(); 
author.setName("Author"); 
author.setValue("lusyo"); 

variables.add(author); 

System.out.println(variables.get(0).getName()); 

Variable scenario = new Variable(); 
author.setName("Scenario"); 
author.setValue("Login"); 

variables.add(scenario); 

System.out.println(variables.get(0).getName()); 
System.out.println(variables.get(1).getName()); 

출력은 다음과 같습니다 :

Author 
Scenario 
null 

당신이 볼 수 있듯이, scenario는 인덱스 0에 위치하지만, 안 여기

는 코드입니다. 나는이 코드로 무슨 일이 일어나는지 알 수 없다.

도움을 주셔서 감사합니다.

+0

20을 더한 다음 루프로 반복하고 출력이 무엇인지 알려주십시오. – razielsarafan

답변

4
Variable scenario = new Variable(); 
author.setName("Scenario"); 
author.setValue("Login"); 

은 거기에 아무것도 당신을 방해 하는가? :)

3

당신은 일단 여기에 두 번

Variable author = new Variable(); 
author.setName("Author"); 
author.setValue("lusyo"); 

을 저자 변수를 :) 속성을 설정하고 나중에됩니다

Variable scenario = new Variable(); 
author.setName("Scenario"); 
author.setValue("Login"); 

을하지만이 시나리오는 특성을 설정하지 않습니다.

이 시도 :

Variable scenario = new Variable(); 
scenario.setName("Scenario"); 
scenario.setValue("Login"); 
+0

죄송합니다. 코드를 복사 할 때 실수 한 것입니다. – LuSyo

+1

@LuSyo - 질문을 올바른 코드로 업데이트하십시오. – Leigh

3

오류, 당신은 그것을 찾을 수 있습니다 :

Variable scenario = new Variable(); 
author.setName("Scenario"); 
author.setValue("Login");