«java-stream» 태그된 질문

Stream API 사용과 관련된 질문에이 태그를 사용하십시오. Java 8에 도입되었으며 콜렉션의 필터 맵 감소 파이프 라인과 같은 값 스트림에서 기능 스타일 조작을 지원합니다.

4
Java 8에서 유형을 변환하는 Reduce 메소드에 결합기가 필요한 이유
combinerStreams reduce방식 에서 이행 하는 역할을 완전히 이해하는 데 어려움을 겪고 있습니다. 예를 들어 다음 코드는 컴파일되지 않습니다. int length = asList("str1", "str2").stream() .reduce(0, (accumulatedInt, str) -> accumulatedInt + str.length()); 컴파일 오류 : (인수 불일치; int를 java.lang.String으로 변환 할 수 없음) 그러나이 코드는 컴파일합니다 : int length = asList("str1", "str2").stream() …
142 java  java-8  java-stream 

4
자바 8 : 스트림과 컬렉션의 성능
저는 Java 8을 처음 사용합니다. 여전히 API에 대해 잘 모르지만 새로운 Streams API의 성능과 우수한 이전 컬렉션을 비교하기 위해 작은 비공식 벤치 마크를 만들었습니다. 테스트는의 목록을 필터링하고 Integer각 짝수에 대해 제곱근을 계산하여 결과 List로 저장합니다 Double. 코드는 다음과 같습니다. public static void main(String[] args) { //Calculating square root of even …

7
Java 8에서 람다를 사용하여 Map <K, V>를 다른 Map <K, V>로 어떻게 변환합니까?
방금 Java 8을 살펴보기 시작했고 람다를 시험해보기 위해 최근에 작성한 아주 간단한 것을 다시 작성하려고 생각했습니다. 새 맵의 열이 첫 번째 맵의 열에 대한 방어 적 사본 인 문자열에서 열로의 맵을 다른 문자열에서 열로의 맵으로 바꿔야합니다. 열에 복사 생성자가 있습니다. 내가 지금까지 가장 가까운 것은 다음과 같습니다. Map&lt;String, Column&gt; newColumnMap= …
140 java  map  lambda  java-8  java-stream 

6
자바 스트림에서 실제로는 디버깅을 위해서만 엿볼 수 있습니까?
Java 스트림에 대해 읽고 새로운 진행 사항을 발견하고 있습니다. 내가 찾은 새로운 것 중 하나는 peek()기능이었습니다. peek에서 읽은 거의 모든 것이 스트림을 디버깅하는 데 사용해야한다고 말합니다. 각 계정에 사용자 이름, 비밀번호 필드 및 login () 및 logsIn () 메소드가있는 스트림이있는 경우 어떻게해야합니까? 나도 Consumer&lt;Account&gt; login = account -&gt; account.login(); 과 …
137 java  java-8  java-stream  peek 

1
Java 8 Stream을 사용하여 일부 클래스 속성에서 List를 얻으려면 어떻게해야합니까?
있습니다 List&lt;Person&gt;. List의 속성에서 를 가져와야합니다 Person. 예를 들어 Person수업이 있습니다. class Person { private String name; private String birthDate; public String getName() { return name; } public String getBirthDate() { return birthDate; } Person(String name) { this.name = name; } } List&lt;Person&gt; personList = new ArrayList&lt;&gt;(); personList.add(new Person("David")); personList.add(new …


5
Java에서 루프보다 스트림의 장점은 무엇입니까? [닫은]
폐쇄되었습니다 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 삼년 전에 . 이 질문을 개선하십시오 나는 인터뷰에서 이것을 물었고 나는 내가 가질 수있는 최선의 대답을했다고 확신하지 못한다. 병렬 검색을 수행 …

10
"스트림이 이미 작동되었거나 닫혔습니다"를 방지하기 위해 스트림을 복사합니다.
두 번 처리 할 수 ​​있도록 Java 8 스트림을 복제하고 싶습니다. 나는 collect목록으로 할 수 있고 그로부터 새로운 스트림을 얻을 수 있습니다 . // doSomething() returns a stream List&lt;A&gt; thing = doSomething().collect(toList()); thing.stream()... // do stuff thing.stream()... // do other stuff 하지만 좀 더 효율적이고 우아한 방법이 있어야한다고 생각합니다. 컬렉션으로 …


3
기준과 일치하는 첫 번째 요소를 가져옵니다.
스트림의 기준과 일치하는 첫 번째 요소를 얻는 방법은 무엇입니까? 나는 이것을 시도했지만 작동하지 않습니다 this.stops.stream().filter(Stop s-&gt; s.getStation().getName().equals(name)); 해당 기준이 작동하지 않고 필터 메서드가 Stop이 아닌 다른 클래스에서 호출됩니다. public class Train { private final String name; private final SortedSet&lt;Stop&gt; stops; public Train(String name) { this.name = name; this.stops = new …
121 java  java-8  java-stream 

6
한 줄로 스트림 / 목록의 마지막 요소 가져 오기
다음 코드에서 스트림 또는 목록의 마지막 요소를 어떻게 얻을 수 있습니까? 어디 data.careasA는 List&lt;CArea&gt;: CArea first = data.careas.stream() .filter(c -&gt; c.bbox.orientationHorizontal).findFirst().get(); CArea last = data.careas.stream() .filter(c -&gt; c.bbox.orientationHorizontal) .collect(Collectors.toList()).; //how to? 보시다시피 첫 번째 요소를 얻는 filter것은 어렵지 않습니다. 그러나 한 줄의 마지막 요소를 얻는 것은 진정한 고통입니다. 에서 직접 …
118 java  list  java-8  java-stream 


20
스트림에서 연속 쌍 수집
스트림을 감안할 때 등 { 0, 1, 2, 3, 4 }, 어떻게하면 그것을 주어진 형태로 가장 우아하게 바꿀 수 있습니까? { new Pair(0, 1), new Pair(1, 2), new Pair(2, 3), new Pair(3, 4) } (물론 내가 Pair 클래스를 정의했다고 가정)? 편집 : 이것은 int 또는 원시 스트림에 관한 것이 아닙니다. …
102 java  java-8  java-stream 

5
스트림은 언제 사용해야합니까?
a List와 그 stream()방법을 사용할 때 방금 질문을 받았습니다. 내가 알고 있지만 방법 을 사용하여, 나는 확신에 대한 아니에요 때 사용할 수 있습니다. 예를 들어, 다른 위치에 대한 다양한 경로가 포함 된 목록이 있습니다. 이제 주어진 단일 경로에 목록에 지정된 경로가 포함되어 있는지 확인하고 싶습니다. boolean조건이 충족되었는지 여부에 따라 를 …

9
Java 8의 다중 널 검사
여러 null 검사에 대해 약간 추악한 아래 코드가 있습니다. String s = null; if (str1 != null) { s = str1; } else if (str2 != null) { s = str2; } else if (str3 != null) { s = str3; } else { s = str4; } 그래서 Optional.ofNullable아래와 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.