2015-01-22 3 views
0

java arraylist를 사용하고 있습니다. arraylist를 만드는 데 어려움이 있습니다. 다음은이 예입니다. S1, S2, S3, S4, S5는 예를 들어첫 번째 열을 기준으로 arraylist에 데이터 추가

{[s1,0]} 
{[s2,0]} 
{[s3,0]} 
{[s4,0]} 
{[s5,0]} 

, 선택하고 그것으로 번호를 추가하는 사람들을위한 카테고리입니다, S1 : 2, S2 : 3, S1 : 3, S5 : 4, S3 : 2. 어떻게 출력을 이렇게 만들 수 있습니까?

{[s1,5]} 
{[s2,3]} 
{[s3,2]} 
{[s4,0]} 
{[s5,4]} 

누군가가 나를 도울 수 있기를 바랍니다.

답변

0

여기에 필요한 것은지도입니다. 예 : Map<String, Integer> map = new HashMap<String, Integer>();. 그런 다음 추가하려면 다음을 수행하십시오 map.put("s1", 1);. ArrayList는 배열에 의해 지원되는 목록의 구현이며 키값 쌍을 가질 수 없습니다. 값을 업데이트하려면 당신은이 작업을 수행 할 것입니다 : int current = map.get("s1"); map.put("s1", current++);

당신이 당신 대신 ArrayList를의지도를했을 키에 의해 많은 값을 추적해야하는 경우
는 선언과 같이 :

Map<String, ArrayList<Integer>> map = new HashMap<String,ArrayList<Integer>>(); 
ArrayList<Integer> s1sValues = new ArrayList<Integer>(); 
s1s.add(1); 
s1s.add(2); 
map.put("s1", s1sValues); 
//To add to existing 
map.get("s1").add(3);//If you don't already have a reference 
s1sValues.add(4);//If you do have the reference. 

'

+0

예를 들어 s1은 2 개의 데이터를 가지고 있습니다. 두 데이터를 합하여 s1 열에 다시 저장하려고합니다. 그렇게 할 수 있습니까? –

+0

감사합니다 :) 나는 그것을 사용하는 개념이있어. 내가 그것을 구현하고 도움을 주셔서 감사합니다 –

+0

한 번 더 질문, s1을 동적으로 가져올 수 대신 그것을 하드 코딩? –

관련 문제