Articles of collezioni

Come estendere un elenco Scala per abilitare il taglio non per posizione esplicita ma per predicato / condizione data

Per trait Item case class TypeA(i: Int) extends Item case class TypeB(i: Int) extends Item considera una lista Scala di elementi come val myList = List(TypeA(1), TypeB(11), TypeB(12), TypeA(2), TypeB(21), TypeA(3), TypeB(31)) L’objective è definire un nuovo metodo slice che può essere applicato a myList e che accetta un predicato o una condizione come argomento; […]

Esiste un equivalente Java accettato per Python’s zip ()?

Ho due oggetti List e voglio accoppiarli, proprio come la funzione zip() in Python. Sono abbastanza sicuro che questo non è disponibile nel JDK, ma c’è qualcosa di simile in una libreria abbastanza diffusa, simile alle Apache Commons Collections ? Grazie.

Come verificare se IEnumerable è nullo o vuoto?

Adoro il metodo string.IsNullOrEmpty . Mi piacerebbe avere qualcosa che consentirebbe la stessa funzionalità per IEnumerable. Esiste? Forse qualche lezione di aiuto alla collezione? La ragione per cui le sto chiedendo è che in if istruzioni del codice appaiono disordinate se il patter è (mylist != null && mylist.Any()) . Sarebbe molto più pulito avere […]

Espressione lambda per convertire l’array / elenco di stringhe su array / elenco di numeri interi

Poiché Java 8 è dotato di potenti espressioni lambda, Vorrei scrivere una funzione per convertire un elenco / array di stringhe in array / elenco di numeri interi, float, doppi ecc. In Java normale, sarebbe semplice come for(String str : strList){ intList.add(Integer.valueOf(str)); } Ma come ottengo lo stesso con un lambda, dato un array di […]

L’opposto di Intersect ()

Intersect può essere utilizzato per trovare le corrispondenze tra due raccolte, in questo modo: // Assign two arrays. int[] array1 = { 1, 2, 3 }; int[] array2 = { 2, 3, 4 }; // Call Intersect extension method. var intersect = array1.Intersect(array2); // Write intersection to screen. foreach (int value in intersect) { Console.WriteLine(value); […]

Iterazione su raccolte Java in Scala

Sto scrivendo un codice Scala che usa l’API POI di Apache . Vorrei scorrere le righe contenute nel java.util.Iterator che ottengo dalla class Sheet. Mi piacerebbe usare l’iteratore in un ciclo for each stile, quindi ho cercato di convertirlo in una collezione nativa di Scala, ma non avrò fortuna. Ho esaminato le classi / caratteristiche […]

Restituzione di ‘IList’ vs ‘ICollection’ vs ‘Raccolta’

Sono confuso su quale tipo di raccolta dovrei restituire dai miei metodi e proprietà API pubbliche. Le collezioni che ho in mente sono IList , ICollection e Collection . Restituire uno di questi tipi è sempre preferito rispetto agli altri o dipende dalla situazione specifica?

Recupero di un elenco da un java.util.stream.Stream in Java 8

Stavo giocando con Java 8 lambda per filtrare facilmente le raccolte. Ma non ho trovato un modo conciso per recuperare il risultato come una nuova lista all’interno della stessa dichiarazione. Ecco il mio approccio più conciso finora: List sourceLongList = Arrays.asList(1L, 10L, 50L, 80L, 100L, 120L, 133L, 333L); List targetLongList = new ArrayList(); sourceLongList.stream().filter(l -> […]

Quali equivalenti di Java 8 Stream.collect sono disponibili nella libreria Kotlin standard?

In Java 8, c’è Stream.collect che consente aggregazioni sulle raccolte. In Kotlin, questo non esiste allo stesso modo, se non come una raccolta di funzioni di estensione nello stdlib. Ma non è chiaro quali siano le equivalenze per diversi casi d’uso. Ad esempio, nella parte superiore di JavaDoc per i servizi di Collectors sono esempi […]

Java 8 Nested (Multi level) group di

Ho poche lezioni come sotto class Pojo { List items; } class Item { T key1; List subItems; } class SubItem { V key2; Object otherAttribute1; } Voglio aggregare gli elementi in base a key1 e per ogni aggregazione, i sottotemi devono essere aggregati da key2 nel seguente modo: Map<T, Map<V, List> Com’è ansible con […]