스트림? - 데이터 소스를 추상화하고, 데이터를 다루는데 자주 사용되는 메서드들을 정의해 놓은 것 - 데이터 소스가 무엇이던 간에 같은 방식으로 다를 수 있게 해줌 - 코드의 재사용성이 높아짐 문자열 정렬, 출력 String[] strings = {"data1", "data3", "data2"}; List stringList = Arrays.asList(strings); Arrays.sort(strings); Collections.sort(stringList); for(String string : strings) { System.out.println(string); } for(String string : stringList) { System.out.println(string); } Stream strin..

람다식? - 메서드를 하나의 식으로 표현한 것 - 메서드의 이름과 반환값이 없어지므로, 익명함수라고도 함 람다식 작성법 반환타입 메서드이름 (매개변수) { //내용 } (매개변수) -> { //내용 } int add(int a, int b) { return a + b; } (int a, int b) -> { return a + b; } (a, b) -> a + b 함수형 인터페이스 Type t = (int a, int b) -> a + b; interface Function { int add(int a, int b); } Function function = new Function() { @Override public int add(int a, int b) { return a + b; } }; functi..

해시문제 베스트 앨범 코드 class Solution { public int[] solution(String[] genres, int[] plays) { int[] answer = {}; HashMap map = new HashMap(); for (int i = 0; i < genres.length; i++) { PlayData playData; playData = new PlayData(i); playData.put(i, plays[i]); map.merge(genres[i], playData, PlayData::merge); } Iterator iterator = PlayData.sortByTotalValue(map).iterator(); ArrayList list = new ArrayList(); ..