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.
Sto cercando di formattare un Instant to a String usando il nuovo java 8 time-api e uno schema: Instant instant = ...; String out = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(instant); Usando il codice sopra ottengo un'eccezione che lamenta un campo non supportato: java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: YearOfEra at java.time.Instant.getLong(Instant.java:608) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) ...
Ho un'API esterna che mi restituisce le date come longs, rappresentate come millisecondi dall'inizio dell'epoca. Con l'API Java vecchio stile, vorrei semplicemente costruirne uno Datecon Date myDate = new Date(startDateLong) Qual è l'equivalente nelle classi LocalDate/ LocalDateTimeclassi di Java 8 ? Sono interessato a convertire il punto nel tempo rappresentato …
Nota: questa domanda proviene da un link non attivo che era una precedente domanda SO, ma qui va ... Vedi questo codice ( nota: so che questo codice non "funzionerà" e che Integer::comparedovrebbe essere usato - l'ho appena estratto dalla domanda collegata ): final ArrayList <Integer> list = IntStream.rangeClosed(1, 20).boxed().collect(Collectors.toList()); …
Ho notato che molti metodi Java 8 in Oracle JDK utilizzano Objects.requireNonNull(), che genera internamente NullPointerExceptionse l'oggetto specificato (argomento) lo è null. public static <T> T requireNonNull(T obj) { if (obj == null) throw new NullPointerException(); return obj; } Ma NullPointerExceptionverrà lanciato comunque se un nulloggetto viene sottoposto a dereferenziazione. …
So come "trasformare" un semplice Java Listda Y-> Z, ovvero: List<String> x; List<Integer> y = x.stream() .map(s -> Integer.parseInt(s)) .collect(Collectors.toList()); Ora vorrei fare sostanzialmente lo stesso con una mappa, vale a dire: INPUT: { "key1" -> "41", // "41" and "42" "key2" -> "42 // are Strings } OUTPUT: { …
Ci sono molte nuove cose utili in Java 8. Ad esempio, posso iterare con un flusso su un elenco di oggetti e quindi sommare i valori da un campo specifico delle Objectistanze di. Per esempio public class AClass { private int value; public int getValue() { return value; } } …
Sto cercando di capire la differenza tra i metodi Optional<T>.orElse()e Optional<T>.orElseGet(). La descrizione per il orElse()metodo è "Restituisce il valore se presente, altrimenti restituisce altro". Mentre, la descrizione per il orElseGet()metodo è "Restituisce il valore se presente, altrimenti invoca altro e restituisce il risultato di quella chiamata." Il orElseGet()metodo utilizza …
Stavo testando alcune nuove funzionalità di Java 8 e ho copiato l'esempio nel mio IDE (Eclipse originariamente, quindi IntelliJ) come mostrato qui Eclipse non offriva alcun supporto per le espressioni lambda e IntelliJ continuava a segnalare un errore Espressioni lambda non supportate a questo livello linguistico Vorrei sapere se questo …
In Java 8, esiste un nuovo metodo String.chars()che restituisce un flusso di ints ( IntStream) che rappresenta i codici carattere. Immagino che molte persone si aspetterebbero un flusso di chars qui invece. Qual è stata la motivazione per progettare l'API in questo modo?
Ho appena scoperto le nuove funzionalità del flusso Java 8. Provenendo da Python, mi chiedevo se ora ci fosse un modo pulito per eseguire operazioni su array come il summing, moltiplicando due array in modo "una linea pitonica"? Grazie
Vorrei sapere la differenza tra CompletableFuture, Futuree Observable RxJava. Quello che so è che tutti sono asincroni ma Future.get() blocca il thread CompletableFuture fornisce i metodi di callback RxJava Observable--- simile ad CompletableFuturealtri vantaggi (non sono sicuro) Ad esempio: se il client deve effettuare più chiamate di servizio e quando …
Ho un elenco in myListToParsecui voglio filtrare gli elementi e applicare un metodo su ciascun elemento e aggiungere il risultato in un altro elenco myFinalList. Con Java 8 ho notato che posso farlo in 2 modi diversi. Vorrei sapere il modo più efficiente tra loro e capire perché un modo …
Diciamo che ho la seguente interfaccia funzionale in Java 8: interface Action<T, U> { U execute(T t); } E per alcuni casi ho bisogno di un'azione senza argomenti o tipo di ritorno. Quindi scrivo qualcosa del genere: Action<Void, Void> a = () -> { System.out.println("Do nothing!"); }; Tuttavia, mi dà …
Esiste un'operazione di flusso Java 8 che limita un (potenzialmente infinito) Stream fino a quando il primo elemento non riesce a corrispondere a un predicato? In Java 9 possiamo usare takeWhilecome nell'esempio seguente per stampare tutti i numeri meno di 10. IntStream .iterate(1, n -> n + 1) .takeWhile(n -> …
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.