Maison >Java >javaDidacticiel >Convertir ArrayList en hashmap en java
dans Java est un sous-interface de l'interface List
, représentant un ensemble ordonné, permettant des éléments en double. Collection
est une classe d'implémentation couramment utilisée pour l'interface ArrayList
. List
est une classe dans le cadre de la collection Java, utilisée pour stocker les paires de valeurs clés. HashMap<k v></k>
en ArrayList
: HashMap
ArrayList
<code>输入列表:[1="1", 2="2", 3="3"] 输出映射:{1=1, 2=2, 3=3} 输入列表:[1="Java", 2="for", 3="JavaScript"] 输出映射:{1=Java, 2=for, 3=JavaScript} 输入:Mercedes, Audi, BMW, Harley Davidson, Triumph 输出:{Car=[Mercedes, Audi, BMW], Bike=[Harley Davidson, Triumph]}</code>
Algorithme: Convertissez ArrayList en hashmap
Cet algorithme décrit comment convertir en ArrayList
. HashMap
ArrayList
Syntaxe: Convertissez ArrayList en hashmap
Voici quelques exemples d'extraits de code:
<code class="language-java">ArrayList<product> productList = new ArrayList<product>(); productList = getProducts(); Map<string product> urMap = yourList.stream().collect(Collectors.toMap(Product::getField1, Function.identity())); HashMap<string product> productMap = new HashMap<string product>(); for (Product product : productList) { productMap.put(product.getProductCode(), product); } for (Product p: productList) { s.put(p.getName(), p); } for(Product p : productList){ s.put(p.getProductCode() , p); }</string></string></string></product></product></code>Ces extraits montrent comment convertir
en ArrayList
. HashMap
Méthode
Nous présenterons deux méthodes:
Méthode 1: Utilisez l'itération et Collectors.toMap()
Cette méthode itère directement
. ArrayList
HashMap
<code class="language-java">// 示例代码 (假设ArrayList包含自定义对象) class Color { private String name; private String code; // ... getters and setters ... } // ... List<color> colors = new ArrayList<>(); // ... populate colors list ... Map<string string> colorMap = colors.stream() .collect(Collectors.toMap(Color::getName, Color::getCode));</string></color></code>Méthode 2: Utilisez Java 8 Stream API et
Collectors.groupingBy()
Si vous avez besoin de vous regrouper, vous pouvez utiliser la méthode .
Collectors.groupingBy()
Grâce aux méthodes ci-dessus, vous pouvez choisir la méthode appropriée pour convertir
<code class="language-java">// 示例代码 (假设ArrayList包含自定义对象,需要按类别分组) class Product { private String category; private String name; // ... getters and setters ... } // ... List<product> products = new ArrayList<>(); // ... populate products list ... Map<string list>> productMap = products.stream() .collect(Collectors.groupingBy(Product::getCategory));</string></product></code>en fonction des besoins réels. N'oubliez pas de gérer les clés en double potentielles, comme l'utilisation du troisième paramètre de
pour spécifier la fonction de fusion. Sélectionnez ArrayList
pour maintenir l'ordre d'insertion. HashMap
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!