문제 링크
https://programmers.co.kr/learn/courses/30/lessons/42888
문제 풀이
코드
import java.util.*;
class Solution {
public String[] solution(String[] record) {
Map<String,String>map = new HashMap();
List<String> arr= new ArrayList();
for(int i=0; i<record.length; i++){
String [] parsedRecord = record[i].split(" ");
switch(parsedRecord[0]){
case "Enter" :
arr.add(parsedRecord[1]+"님이 들어왔습니다.");
map.put(parsedRecord[1],parsedRecord[2]);
break;
case "Leave" :
arr.add(parsedRecord[1]+"님이 나갔습니다.");
break;
case "Change" :
map.put(parsedRecord[1],parsedRecord[2]);
break;
}
}
for(int i=0; i<arr.size(); i++){
String [] ids = arr.get(i).split("님이");
String temp = arr.get(i).replace(ids[0],map.get(ids[0]));
arr.set(i, temp);
}
String[] answer = arr.toArray(new String[arr.size()-1]);
return answer;
}
}