본문 바로가기

Development/etc

switch vs If 효율 비교..

내가 대학생때 switch 와 if를 비교할때 switch가 빠르거나 혹은 if와 동등하다고 들었다.. 왜냐하면 컴파일러에 따라 틀리겠지만...

switch는 비교를 하지 않고 곧바로 점프를 하는 경우에는 if보다 빠르다라고 하였다... 그런데 오늘 프로그래머들 끼리 잠깐 회의를 하면서

이 주제가 나왔는데... 다들 if가 빠르다?? 라는 것 같아서 조사를 해보았다.


전체적으로 의견은 굳이 비교를 하자면....


switch문이 jump table을 사용하기 때문에 효율이 더 좋다라고 한다. (컴파일에 따라 틀리 겠지만......) 

하지만 이 성능의 차이는 요즘 같은 세상에서는 극히 알기 힘들고

성능가지고 비교하는 것은 오버라고 생각하는 사람들이 많다.


switch 와 if 문은 성능이 아니라 상황에 따른 코드 가독성을 중시하는 것이 맞게 아닐까라는 생각이 든다.