Utilizzare questo tag per domande specifiche su Java 8 che è la versione 8 (numero interno 1.8) della piattaforma Java, rilasciata il 18 marzo 2014. Nella maggior parte dei casi, è necessario specificare anche il tag java.
Dato un elenco di elementi, voglio ottenere l'elemento con una determinata proprietà e rimuoverlo dall'elenco. La migliore soluzione che ho trovato è: ProducerDTO p = producersProcedureActive .stream() .filter(producer -> producer.getPod().equals(pod)) .findFirst() .get(); producersProcedureActive.remove(p); È possibile combinare get e remove in un'espressione lambda?
Joda Time ha un bel DateTimeUtils.setCurrentMillisFixed () per simulare l'ora. È molto pratico nei test. Esiste un equivalente nell'API java.time di Java 8 ?
На этот вопрос есть ответы на Stack Overflow на русском : Какие различия между findFirst и findAny in Java 8? Sto po 'confuso tra la Stream#findAny()e Stream#findFirst()della StreamAPI in Java 8. Quello che ho capito è che entrambi restituiranno il primo elemento corrispondente dallo stream, ad esempio, se usati insieme …
Perché questo genera un java.lang.NullPointerException? List<String> strings = new ArrayList<>(); strings.add(null); strings.add("test"); String firstString = strings.stream() .findFirst() // Exception thrown here .orElse("StringWhenListIsEmpty"); //.orElse(null); // Changing the `orElse()` to avoid ambiguity Il primo elemento stringsè null, che è un valore perfettamente accettabile. Inoltre, findFirst()restituisce un Optional , che ha ancora più …
Ho letto questo post qui. Ma ancora non riesco a eseguire codice contenente le funzionalità API Java 8 Stream come le seguenti su minSdkVersion <24. List<Car> newCars = cars.stream() .filter(s -> s.getColor().equals("red")) .collect(Collectors.toList()); Non viene eseguito a causa del messaggio di errore La chiamata richiede il livello API 24 (il …
Ho un epoch second e un zoneId, per method1.Può essere convertito in LocalDateTime con zoneId predefinito di sistema, ma non trovo il modo per convertire epoch second in LocalDateTime con il metodo2, perché non c'è ZoneOffset.systemDefault. Penso che sia oscuro. import java.time.{Instant, LocalDateTime, ZoneId, ZoneOffset} val epochSecond = System.currentTimeMillis() / …
Ciao amici sviluppatori Java, So che l'argomento potrebbe essere un po 'in in advancequanto il JDK8 non è ancora stato rilasciato (e non per ora comunque ..) ma stavo leggendo alcuni articoli sulle espressioni Lambda e in particolare sulla parte relativa alla nuova API di raccolta nota come Stream. Ecco …
La mia applicazione web funziona bene su JDK 1.7 ma si arresta in modo anomalo su 1.8 con la seguente eccezione (durante l'avvio del server delle applicazioni con Jetty 8). Sto usando la versione Spring: 3.2.5.RELEASE. Eccezione: org.springframework.core.NestedIOException: ASM ClassReader failed to parse class file - probably due to a …
Durante l'esecuzione dello script selenio, ricevo il seguente messaggio di errore nella console Eclipse: La classe è stata compilata da una versione più recente di Java Environment (file di classe versione 53.0), questa versione di Java Runtime riconosce solo le versioni di file di classe fino a 52.0. Versione Java: …
Sto cercando di elencare elementi duplicati nell'elenco di numeri interi, ad esempio, List<Integer> numbers = Arrays.asList(new Integer[]{1,2,1,3,4,4}); utilizzando Streams di jdk 8. Qualcuno ha provato. Per rimuovere i duplicati possiamo usare l'api distinte (). Ma per quanto riguarda la ricerca degli elementi duplicati? Qualcuno mi può aiutare?
Capisco che questi metodi differiscono nell'ordine di esecuzione ma in tutti i miei test non riesco a ottenere una diversa esecuzione degli ordini. Esempio: System.out.println("forEach Demo"); Stream.of("AAA","BBB","CCC").forEach(s->System.out.println("Output:"+s)); System.out.println("forEachOrdered Demo"); Stream.of("AAA","BBB","CCC").forEachOrdered(s->System.out.println("Output:"+s)); Produzione: forEach Demo Output:AAA Output:BBB Output:CCC forEachOrdered Demo Output:AAA Output:BBB Output:CCC Fornisci esempi quando 2 metodi produrranno output diversi.
Mi sono imbattuto in una strana situazione in cui l'utilizzo di un flusso parallelo con un lambda in un inizializzatore statico richiede apparentemente per sempre senza l'utilizzo della CPU. Ecco il codice: class Deadlock { static { IntStream.range(0, 10000).parallel().map(i -> i).count(); System.out.println("done"); } public static void main(final String[] args) {} …
Sono stato controllando il prossimo Java update, vale a dire: Java 8 or JDK 8. Sì, sono impaziente, ci sono molte cose nuove, ma c'è qualcosa che non capisco, un semplice codice: final Stream<Integer>stream = Stream.of(1,2,3,4,5,6,7,8,9,10); stream.flatMap(); i javadoc sono public <R> Stream<R> flatMap(Function<? super T,? extends Stream<? extends R>> …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.