Java stream&for-loop 속도와 효율성에 관하여

고라니·2021년 12월 21일
0

우리는 코드 가독성과 유지보수 측면에서 2015년 이후 도입된 stream을 공부하며 사용을 권장하고 있으나, 실제 실행시간의 효율성은 for-loop가 좋다는 것을 듣고 해당 블로그 글을 포함하여 찾아보게 되었다.


결론부터 말하자면 원소 하나하나의 계산비용이 크지 않다면 for-loop가 거의 빠르다는 것이다. (단순 연산일수록 for-loop 압승)


이유는 JIT Compiler가 for-loop를 40년 이상 다뤄왔다 보니 내부적인 최적화 (internal optimization)이 이미 잘 되어있어 단순연산일수록 꽤나 큰 퍼포먼스 차이를 보여주기 때문이다.


하지만 속도도 중요하지만 코드의 가독성과 유지보수도 매우 중요하니 각자 판단을 통하여 적절하게 쓰는 것이 중요하다!

이미.. 스트림이 더 편해져버렸다.... i love gadokseong

출처 https://jypthemiracle.medium.com/java-stream-api%EB%8A%94-%EC%99%9C-for-loop%EB%B3%B4%EB%8B%A4-%EB%8A%90%EB%A6%B4%EA%B9%8C-50dec4b9974b

profile
공부를 열심히 하는 학부생

0개의 댓글