stream

JVM/Java

[Java] HashMap. stream으로 sum하기

😎서론 이번 HashMap에서 sum을 해야하는 상황이 생겨서 분명 get으로 꺼내서 하나씩 sum하는 것 말고 stream으로 하는 방법이 있을 것 같아서 찾아봐서 기록한다. 😋본론 mapToInt와 reduce 방식 두 가지를 보게 되었는데 reduce가 개인적으로 더 깔끔해보여서 자주 사용하게 될 것 같다. public static int getSum(final Map data) { return data.values().stream().mapToInt(Integer::intValue).sum(); } public static int getSum(final Map data) { return data.values().stream().reduce(0, Integer::sum); } 역시.. 항상 '이런거..

JVM/Java

[Java] ArrayList 조건 삭제 'removeIf'

서론 arrayList 경우 내가 삭제하고 싶은 애를 삭제하고 싶은 경우 for문을 돌리고, if문을 통해 삭제하는 경우가 있었다. 하지만 자바8부터 생긴 removeIf를 사용하면 람다식을 이용하여 간단하게 삭제할 수 있다. 본론 자바8에 생긴 람다 중 Predicate 를 사용하여 list에서 원하는 애를 삭제하는 방식을 이용하고 있다. 이는 stream에 있는 filter랑 같은 원리이다. 리턴 값은 boolean으로 하나라도 삭제가 되면 true, 삭제가 없으면 false를 반환한다. 예제 위처럼 removeIf를 통해 조건에 맞는 데이터들을 한 번에 정리할 수 있다.

Hyo Kim
'stream' 태그의 글 목록