이펙티브자바 아이템471 [Effective Java] 아이템47 반환 타입으로는 스트림보다 컬렉션이 낫다 ■ 반환타입 선택 원소 시퀀스, 즉 일련의 원소를 반환하는 메서드는 많다. Collection, List, Set과 같은 컬렉션 인터페이스, 혹은 Iterable이나 배열을 사용했다. 자바 8에서는 스트림이 도입되면서 선택지가 복잡해졌다. 스트림은 반복을 지원하지 않는다. 따라서 스트림과 반복을 알맞게 조합해야 좋은 코드가 나온다. 여기서 재밌는 사실 하나는 Stream인터페이스는 Iterable 인터페이스의 추상 메서드를 모두 정의해 놓았지만 Iterable을 확장하지 않았다는 문제가 있다. 어댑터 메서드를 사용하면 스트림을 iterate로 변경할 수 있다. //Stream를 Iterable로 중개해주는 어댑터 public static Iterable iterableOf(Stream stream) { .. 2021. 6. 29. 이전 1 다음