«java-8» 태그된 질문

2014 년 3 월 18 일에 릴리스 된 Java 플랫폼의 버전 8 (내부 번호 1.8) 인 Java 8 관련 질문에이 태그를 사용하십시오. 대부분의 경우 java 태그도 지정해야합니다.

6
자바 람다에 둘 이상의 매개 변수가있을 수 있습니까?
Java에서 람다가 여러 다른 유형을 허용하도록 할 수 있습니까? 즉 : 단일 변수가 작동합니다. Function <Integer, Integer> adder = i -> i + 1; System.out.println (adder.apply (10)); Varargs도 작동합니다. Function <Integer [], Integer> multiAdder = ints -> { int sum = 0; for (Integer i : ints) { sum += …
162 java  lambda  java-8 

6
Java8에서 람다를 사용하여 null이 아닌 경우에만 값 필터링
라고하는 객체 목록이 있습니다 car. Java 8을 사용하여 일부 매개 변수를 기준 으로이 목록을 필터링하고 싶습니다.하지만 매개 변수가 null이면 throw NullPointerException됩니다. null 값을 필터링하는 방법은 무엇입니까? 현재 코드는 다음과 같습니다 requiredCars = cars.stream().filter(c -> c.getName().startsWith("M")); 이 발생 NullPointerException하는 경우 getName()반환 null.

4
Java 8에서 스트림을 캐스트 할 수 있습니까?
Java 8에서 스트림을 캐스트 할 수 있습니까? 객체 목록이 있다고 가정하면 추가 객체를 모두 필터링하기 위해 이와 같은 작업을 수행 할 수 있습니다. Stream.of(objects).filter(c -> c instanceof Client) 이 후, 고객과 무언가를하고 싶다면 각각을 캐스팅해야합니다. Stream.of(objects).filter(c -> c instanceof Client) .map(c -> ((Client) c).getID()).forEach(System.out::println); 조금 추한 것 같습니다. 전체 스트림을 …
160 java  java-8  java-stream 

5
람다를 직렬화하는 방법?
람다를 우아하게 직렬화하는 방법은 무엇입니까? 예를 들어, 아래 코드는를 던집니다 NotSerializableException. SerializableRunnable"더미"인터페이스를 만들지 않고 어떻게 해결할 수 있습니까? public static void main(String[] args) throws Exception { File file = Files.createTempFile("lambda", "ser").toFile(); try (ObjectOutput oo = new ObjectOutputStream(new FileOutputStream(file))) { Runnable r = () -> System.out.println("Can I be serialized?"); oo.writeObject(r); } …



10
Java 8에서 사용되는 기능 인터페이스는 무엇입니까?
Java 8에서 "기능적 인터페이스"라는 새로운 용어를 발견했습니다. 람다 식으로 작업하는 동안 하나만 사용할 수있었습니다 . Java 8은 일부 내장 기능 인터페이스를 제공하며 기능 인터페이스를 정의하려는 경우 @FunctionalInterface주석 을 사용할 수 있습니다 . 인터페이스에서 단일 메소드 만 선언 할 수 있습니다. 예를 들면 다음과 같습니다. @FunctionalInterface interface MathOperation { int operation(int …
154 java  lambda  interface  java-8 

26
자바 8 스트림 역순
일반적인 질문 : 스트림을 되 돌리는 올바른 방법은 무엇입니까? 스트림이 어떤 유형의 요소로 구성되어 있는지 알지 못한다면 어떤 스트림을 역전시키는 일반적인 방법은 무엇입니까? 구체적인 질문 : IntStream특정 범위에서 정수를 생성하는 범위 방법을 제공합니다 IntStream.range(-range, 0). 이제 0에서 음수로 전환 범위를 반대로 바꾸면 작동하지 않습니다.Integer::compare List<Integer> list = Arrays.asList(1,2,3,4); list.stream().sorted(Integer::compare).forEach(System.out::println); 과 …

9
LocalDateTime을 구문 분석 할 때 TemporalAccessor에서 LocalDateTime을 가져올 수 없음 (Java 8)
Java 8에서 날짜 문자열을 DateTime 객체로 변환하려고합니다. 다음 줄을 실행할 때 : DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); LocalDateTime dt = LocalDateTime.parse("20140218", formatter); 다음과 같은 오류가 발생합니다. Exception in thread "main" java.time.format.DateTimeParseException: Text '20140218' could not be parsed: Unable to obtain LocalDateTime from TemporalAccessor: {},ISO resolved to 2014-02-18 of type java.time.format.Parsed at …

14
람다와 함께 JDK8을 사용하여 압축 스트림 (java.util.stream.Streams.zip)
람다 b93이있는 JDK 8에는 스트림을 압축하는 데 사용할 수 있는 클래스 java.util.stream.Streams.zip이 b93 에 있습니다 ( Dhananjay Nene의 Java8 Lambdas 탐험 1 부 튜토리얼에 설명되어 있음 ). 이 기능 : 요소가 두 스트림의 요소를 결합한 결과 인 지연 및 순차 결합 스트림을 작성합니다. 그러나 b98에서 이것은 사라졌습니다. 실제로 Streams클래스는 b98의 …

2
java8 스트림에서 처리 순서를 보장하는 방법은 무엇입니까?
XMLJava 객체 내부에서 목록을 처리하고 싶습니다 . 모든 요소를 ​​순서대로 처리해야합니다. 그러므로 내가 사용 sequential하는 각각을 불러야 stream합니까? list.stream().sequential().filter().forEach() 아니면 병렬 처리를 사용하지 않는 한 스트림을 사용하는 것으로 충분합니까? list.stream().filter().forEach()
148 java  java-8  java-stream 

10
스트림을 두 개의 스트림으로 분할 할 수 있습니까?
Java 8 스트림으로 표시되는 데이터 세트가 있습니다. Stream<T> stream = ...; 임의의 하위 집합을 얻기 위해 필터링하는 방법을 볼 수 있습니다-예를 들어 Random r = new Random(); PrimitiveIterator.OfInt coin = r.ints(0, 2).iterator(); Stream<T> heads = stream.filter((x) -> (coin.nextInt() == 0)); 또한이 스트림을 줄여 데이터 세트의 임의의 절반을 나타내는 두 개의 …
146 java  java-8  java-stream 


4
Java 8의 분할기, 수집기 및 스트림 이해
StreamJava 8 의 인터페이스, 특히 Spliteratorand Collector인터페이스 와 관련된 인터페이스를 이해하는 데 문제 가 있습니다. 내 문제는 내가 간단하게 이해할 수 있다는 것입니다 Spliterator및 Collector인터페이스를 아직 그 결과, Stream인터페이스는 여전히 다소 나에게 모호하게됩니다. 정확히 a Spliterator와 a 는 무엇 Collector이며 어떻게 사용합니까? 내가 직접 ( Spliterator또는 Collector아마도 Stream그 과정에서 내 …

4
Java8에서 void (void가 아닌) 메소드에 함수 유형을 지정하는 방법은 무엇입니까?
일급 시민으로서 어떻게 기능하는지 알아보기 위해 Java 8을 가지고 놀고 있습니다. 다음 스 니펫이 있습니다. package test; import java.util.*; import java.util.function.*; public class Test { public static void myForEach(List<Integer> list, Function<Integer, Void> myFunction) { list.forEach(functionToBlock(myFunction)); } public static void displayInt(Integer i) { System.out.println(i); } public static void main(String[] args) { …
143 java  java-8 

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