2012. 8. 27. 10:29

map을 만들고 add하고 


map.get(i)로 돌리는데 i에 해당하는 키 값을 이미 지웠다면?! 


map.ceilingKey(i)를 이용하면 됩니다. 즉


map에 키와 밸류값을 추가한 뒤 로그를 찍었을 때


{0=1, 1=2, 2=3} 에서 


키값 1번을 지우면


{0=1, 2=3} 이 됩니다.


여기서 for문으로 map을 돌려버리면 


map.get(i)에서 i가 1일 때 NullPointException이 발생하게 됩니다.


이럴때 


if(map.get(i) == null){

   i = map.ceilingKey(i);

}


를 넣어주면 i는 2로 바뀌어 계산됩니다.



Posted by 그린블로그 DEV그린

댓글을 달아 주세요