1
두 가지 일을하는 방법과 나는 어느 궁금 빠른 :프로그래밍 성능
첫 번째 방법 :
if (!map.containsKey(key)) {
map.put(key, new ArrayList<String>());
}
map.get(key).addAll(someList);
두 번째 방법 :
List<String> existingList = map.get(key);
if (existingList == null){
existingList = new ArrayList<String>();
}
existingList.addAll(someList);
map.put(key, existingList);
첫 번째 방법 키를 더 자주 해시해야하지만 두 번째 방법보다 개체 생성을 덜 필요로하는 것 같습니다. 두 번째 방법은 첫 번째 방법보다 빠르지 만 리소스 집약적 인 것 같습니다.
생각하십니까?
'Map.put'도 검색을 수행합니다. 그래서, 이것은 룩업이 ** 단지 ** 키가 존재할 때 한번 수행된다는 것을 보장합니다 **. –
@ Martyn Courteaux - 지적 해 주신 것에 감사드립니다. –
굉장합니다. 응답 주셔서 감사합니다! – user965697