English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Guida di base Java

Controllo dei flussi Java

Array Java

Java Orientato agli oggetti (I)

Java Orientato agli oggetti (II)

Java Orientato agli oggetti (III)

Gestione delle eccezioni Java

Raccolta List Java

Raccolta Queue (Coda) Java

Raccolta Map Java

Raccolta Set Java

Input/Output (I/O) Java

Reader/Writer Java

Altri argomenti Java

Programma Java che converte una raccolta (HashMap) in una lista

Completo di esempi Java

In questo programma, imparerai vari trucchi per convertire una raccolta (HashMap) in una lista.

Esempio 1: Convertire una mappa in una lista

import java.util.*;
public class MapList {
    public static void main(String[] args) {
        Map<Integer, String> map = new HashMap<>();
        map.put(1, "a");
        map.put(2, "b");
        map.put(3, "c");
        map.put(4, "d");
        map.put(5, "e");
        List<Integer> keyList = new ArrayList<>(map.keySet());
        List<String> valueList = new ArrayList<>(map.values());
        System.out.println("Elenco Chiavi: " + keyList);
        System.out.println("Elenco Valori: " + valueList);
    }
}

Eseguendo questo programma, l'output sarà:

Lista Chiavi: [1, 2, 3, 4, 5]
Lista Valori: [a, b, c, d, e]

Nel programma sopra, abbiamo una mappa denominata Integer e Stringa. Poiché la mappa contieneChiaveValoreSì, quindi abbiamo bisogno di due liste per memorizzarle, ovvero keyList per le chiavi e valueList per i valori.

Usiamo il metodo keySet() della mappa per ottenere tutte le chiavi e ne creiamo un ArrayList chiamato keyList. Allo stesso modo, usiamo il metodo values() della mappa per ottenere tutte le valori e ne creiamo un ArrayList chiamato valueList.

Esempio 2: Convertire una mappa in una lista utilizzando lo stream

import java.util.*;
import java.util.stream.Collectors;
public class MapList {
    public static void main(String[] args) {
        Map<Integer, String> map = new HashMap<>();
        map.put(1, "a");
        map.put(2, "b");
        map.put(3, "c");
        map.put(4, "d");
        map.put(5, "e");
        List<Integer> keyList = map.keySet().stream().collect(Collectors.toList());
        List<String> valueList = map.values().stream().collect(Collectors.toList());
        System.out.println("Elenco Chiavi: " + keyList);
        System.out.println("Elenco Valori: " + valueList);
    }
}

L'output del programma è lo stesso dell'esempio 1.

Nel programma sopra, non abbiamo utilizzato il costruttore ArrayList, ma stream() per trasformare la mappatura in una lista

Abbiamo passato toList() del Collector come parametro, convertendo chiave e valore in un flusso tramite il metodo collect() e trasformandolo in una lista

Completo di esempi Java