http://www.okjsp.net/seq/260279
안녕하세요.
추석을 잘 보내셨나요?
질문이 있습니다.
["사과","0.98763","배","0.37423","귤","0.36452"..]
이런식으로 문자 숫자 형태의 값이 10쌍씩 있다고할 때
이 값을 map에 넣고 싶습니다.
map.put("사과", "0.98763");
map.put("배", "0.37423");
map.put("귤", "0.36452");
....
StringTokenizer을 사용해서 문자를 자르는 것도 알겠고
map에 값을 넣는 것도 알겠는데
자른 값을 어떤것은 key값으로
어떤것은 value로 넣는다는 것을 어떻게 표현해야 하나요?
=============> 답1
["사과","0.98763","배","0.37423","귤","0.36452"..]
10쌍이라면 key, value 대응한다는 거니까~
홀수의 값이 key가 되면 되겠네요!
홀수는 사과, 배, 귤 되겠죠?
=============> 답2
지금 []는 String[]이 맞습니까?
그런데 StringTokenizer 무슨 말인지 이해가 안되는군요.
[]가 "[]"는 아니겠지요?
배열은 반복문으로 각 인덱스 + 1가 홀수면 키 짝수면 값으로
맵에 put() 하면 되겠네요.
17177dano (1095) 2014-09-11 13:39:34x
=============> 내답1,2-1
데이터 형식은 String 으로 되어 있고 ["",""]이렇게 보여지는 부분은 따로 추가한 것입니다.
실제값은 사과\t0.98763\t배\t0.37423\t귤\t0.36452\t..이렇게 탭으로 구분되어 있고요..
(설명을 제대로 한것인지 모르겠네요.)
그러니까..
탭으로 구분된 string에 ["","",..]를 추가해서 출력하게 됩니다.
추가한 것이 ["사과","0.98763","배","0.37423","귤","0.36452"..]
이렇게 보여지는 것이고요 , (콤마)로 자를 수 있습니다.
그럼 이 string을 다시 배열에 넣어서 인덱스를 주면서 홀수이면 키값으로
짝수이면 value값으로 넣으란 말씀이신가요?
=============> 답2-1
보여지는건 나중에 생각할 일이고
저 같은 경우 먼저 데이터를 편하게 다룰려면
탭으로 구분된 상태에서 배열이나 List에 하나씩 넣겠네요.
그리고 반복문 도중 구분하여 맵에 키,값을 담을 겁니다.
=============> 답2-2
저 보여지는 부분에서 부터 문자를 잘라서 넣어야 합니다..
이미 그렇게 넘어와서요 (cpp에서 값을 받아서 사용해야 하거든요..설명이 부족했습니다.)
더 해보겠습니다.
두분다 답변 감사드립니다~
=============> 답3
간단한 테스트 코드 짜봣는데...맵에 key와 value를 가져와야해서..그냥 대충 만들어봤습니다.
String a = "배/999/사과/888/귤/777";
StringTokenizer tokens = new StringTokenizer(a, "/" );
HashMap<String, String> map = new HashMap<String, String>();
String d = null;
int b = tokens.countTokens();
for(int i=0 ; i<b ; i++){
if(i % 2 == 0 ){
d = tokens.nextToken();
}else{
map.put(d, tokens.nextToken());
}
}
System.out.println(map);
=============> 내답3-1
실행해 보니 {배=999, 사과=888, 귤=777} 이렇게 나와요 ~ 감사합니다.
조금 바꿔서 출력하도록 했고요.
아직 완전하게 되지는 않지만 더 하다보면 될 것 같습니다.
'나의질문답' 카테고리의 다른 글
jstl if문 질문있습니다. (0) | 2014.09.16 |
---|---|
Arraylist add하는 것 질문있습니다~ (0) | 2014.09.12 |
퍼미션 설정? (0) | 2014.09.04 |
하위 폴더명과 파일을 읽고 싶습니다 (0) | 2014.09.03 |
글자형식?질문드립니다. (0) | 2014.09.02 |