728x90
반응형
ArrayList와 같은 자료구조와 달리 Map은 순서대로 출력이 불가능하다.
하지만 LinkedHashMap의 경우 순서대로 출력이 가능한데, 이와 같은 자료구조에서 출력을 하기 위한 방법
public static void print(Map<String, String> map) {
Set<String> set = map.keySet();
Iterator<String> iter = set.iterator();
while (iter.hasNext()) {
String key = ((String)iter.next());
String value = map.get(key);
System.out.println("key : " + key + ", value : " + value);
}
}
LinkedHashMap에서 value값만큼 Key 출력
Set<String> set = LinkedHashMap.keySet();
Iterator<String> iter = set.iterator();
while (iter.hasNext()) {
String key = ((String) iter.next());
for (int k = 0; k < LinkedHashMap.get(key); k++) {
System.out.print(key + " ");
}
}
Values만 출력
Collection <Integer> arr =T.solution(list, m).values();
Iterator lt=arr.iterator();
while(lt.hasNext()) {
int x=((int) lt.next());
System.out.print(x+" ");
}
Key만 출력
Set <String> set= T.solution(list,m).keySet();
Iterator lt1 = set.iterator();
while(lt1.hasNext()) {
String key = ((String) lt1.next());
for(int k=0;k<T.solution(list, m).get(key);k++) {
System.out.print(key+" ");
}
}
key=value로 출력
Set <Entry <String, Integer>> entry = T.solution(list, m).entrySet();
Iterator lt2 = entry.iterator();
while(lt2.hasNext()) {
Entry ent = ((Entry)lt2.next());
System.out.print(ent+" ");
}
key와 value 출력
Set <String> set= T.solution(list,m).keySet();
Iterator<String> lt2 = set.iterator();
while(lt2.hasNext()) {
String key = ((String) lt2.next());
int value = T.solution(list, m).get(key);
System.out.print(key+": "+value);
}
+) Map.Entry 이용
for (Map.Entry entry : T.solution(list, m).entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
728x90
반응형
'Java > Java 알고리즘 인프런' 카테고리의 다른 글
[Ch.04 - HashTree] 04. 모든 아나그램 찾기 # (0) | 2022.05.28 |
---|---|
[Java] ArrayList add()와 set() (0) | 2022.05.27 |
[Java] 반올림 올림 버림 (0) | 2022.05.24 |
ArrayList에서 max와 min값만 빼기 (0) | 2022.05.21 |
String[]을 String[][]로 변환 (0) | 2022.05.21 |