반응형
Android-HashMap에서 값 가져 오기
Android에서 HashMap 검색을 시도했지만 문제가 발생합니다.
이 예를 고려하십시오.
HashMap<String, String> meMap=new HashMap<String, String>();
meMap.put("Color1","Red");
meMap.put("Color2","Blue");
meMap.put("Color3","Green");
meMap.put("Color4","White");
이제 반복해서 각 색상의 값을 가져와 "토스트"에 표시하고 싶습니다. 어떻게 표시합니까?
Iterator myVeryOwnIterator = meMap.keySet().iterator();
while(myVeryOwnIterator.hasNext()) {
String key=(String)myVeryOwnIterator.next();
String value=(String)meMap.get(key);
Toast.makeText(ctx, "Key: "+key+" Value: "+value, Toast.LENGTH_LONG).show();
}
다음은 Map
사용법 을 보여주는 간단한 예입니다 .
Map<String, String> map = new HashMap<String, String>();
map.put("Color1","Red");
map.put("Color2","Blue");
map.put("Color3","Green");
map.put("Color4","White");
System.out.println(map);
// {Color4=White, Color3=Green, Color1=Red, Color2=Blue}
System.out.println(map.get("Color2")); // Blue
System.out.println(map.keySet());
// [Color4, Color3, Color1, Color2]
for (Map.Entry<String,String> entry : map.entrySet()) {
System.out.printf("%s -> %s%n", entry.getKey(), entry.getValue());
}
// Color4 -> White
// Color3 -> Green
// Color1 -> Red
// Color2 -> Blue
항목은 임의의 순서로 반복됩니다. 특정 주문이 필요한 경우 다음을 고려할 수 있습니다.LinkedHashMap
또한보십시오
- 효과적인 Java 2nd Edition, 항목 52 : 인터페이스로 객체 참조
- 자바 튜토리얼 / 컬렉션 - 인터페이스
Map
- 자바 언어 가이드 / for-each 루프
관련 질문
항목 반복시 :
- 지도 반복
- 반복 및지도에서 제거
- 반복하는 동안지도를 수정하려면
Iterator
.
- 반복하는 동안지도를 수정하려면
다른 Map
특성 :
의 위에 enum
대신 enum
및 사용을 고려할 수 있습니다 .EnumMap
Map<String,String>
또한보십시오
관련 질문
이것은 경고없이!
HashMap<String, String> meMap=new HashMap<String, String>();
meMap.put("Color1","Red");
meMap.put("Color2","Blue");
meMap.put("Color3","Green");
meMap.put("Color4","White");
for (Object o : meMap.keySet()) {
Toast.makeText(getBaseContext(), meMap.get(o.toString()),
Toast.LENGTH_SHORT).show();
}
HashMap<String, String> meMap = new HashMap<String, String>();
meMap.put("Color1", "Red");
meMap.put("Color2", "Blue");
meMap.put("Color3", "Green");
meMap.put("Color4", "White");
Iterator myVeryOwnIterator = meMap.values().iterator();
while(myVeryOwnIterator.hasNext()) {
Toast.makeText(getBaseContext(), myVeryOwnIterator.next(), Toast.LENGTH_SHORT).show();
}
HashMap<String, String> meMap=new HashMap<String, String>();
meMap.put("Color1","Red");
meMap.put("Color2","Blue");
meMap.put("Color3","Green");
meMap.put("Color4","White");
Iterator iterator = meMap.keySet().iterator();
while( iterator. hasNext() ){
Toast.makeText(getBaseContext(), meMap.get(iterator.next().toString()),
Toast.LENGTH_SHORT).show();
}
나를 위해이 일 :
HashMap<String, String> meMap=new HashMap<String, String>();
meMap.put("Color1","Red");
meMap.put("Color2","Blue");
meMap.put("Color3","Green");
meMap.put("Color4","White");
Iterator iterator = meMap.keySet().iterator();
while( iterator. hasNext() )
{
Toast.makeText(getBaseContext(), meMap.get(iterator.next().toString()),
Toast.LENGTH_SHORT).show();
}
키를 아는 경우이 코드를 사용하십시오.
문자열 값 = meMap.get (key);
for (Object key : meMap.keySet()) {
String value=(String)meMap.get(key);
Toast.makeText(ctx, "Key: "+key+" Value: "+value, Toast.LENGTH_LONG).show();
}
Iterator iterator = meMap.keySet().iterator();
while(iterator.hasNext() ){
//get key
String key=(String)iterator.next();
//toast value
Toast.makeText(getBaseContext(),""+(String)meMap.get(key),Toast.LENGTH_SHORT).show();
}
참고 URL : https://stackoverflow.com/questions/3422388/android-get-value-from-hashmap
반응형
'Nice programing' 카테고리의 다른 글
RecyclerView의 CheckBox는 다른 항목을 계속 확인합니다. (0) | 2020.10.20 |
---|---|
긴 16 진수 문자열에서 파이썬 바이트 객체를 만드는 방법은 무엇입니까? (0) | 2020.10.20 |
Travis CI의 기능과 사용시기 이해 (0) | 2020.10.19 |
IE와의 javascript document.getElementsByClassName 호환성 (0) | 2020.10.19 |
Elasticsearch의 인증 (0) | 2020.10.19 |