Java가 스트림 작업을 스트림 파이프 라인으로 구성하는 방법을 이해하는 데 어려움을 겪고있는 것 같습니다.
다음 코드를 실행할 때
public
static void main(String[] args) {
StringBuilder sb = new StringBuilder();
var count = Stream.of(new String[]{"1", "2", "3", "4"})
.map(sb::append)
.count();
System.out.println(count);
System.out.println(sb.toString());
}
콘솔 만 인쇄합니다 4
. StringBuilder
객체는 여전히 값을 가진다 ""
.
필터 작업을 추가하면 : filter(s -> true)
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
var count = Stream.of(new String[]{"1", "2", "3", "4"})
.filter(s -> true)
.map(sb::append)
.count();
System.out.println(count);
System.out.println(sb.toString());
}
출력은 다음과 같이 변경됩니다.
4
1234
중복 적으로 보이는이 필터 작업은 구성된 스트림 파이프 라인의 동작을 어떻게 변경합니까?