Rumah > Java > javaTutorial > Tukar ArrayList ke HashMap di Java

Tukar ArrayList ke HashMap di Java

Patricia Arquette
Lepaskan: 2025-02-07 11:23:08
asal
453 orang telah melayarinya

Convert ArrayList to HashMap in Java Antara muka

di Java adalah subinterface antara muka

, yang mewakili set yang diperintahkan, yang membolehkan unsur -unsur pendua. List adalah kelas pelaksanaan yang biasa digunakan untuk antara muka Collection. ArrayList adalah kelas dalam kerangka koleksi Java, yang digunakan untuk menyimpan pasangan nilai kunci. List HashMap<k v></k> Artikel ini akan memperkenalkan beberapa kaedah untuk menukar

ke

: ArrayList HashMap

oleh lelaran
  • ArrayList Menggunakan Java 8 Stream Api
  • Berikut adalah beberapa contoh:

Algoritma

<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>
Salin selepas log masuk
: Tukar arraylist ke hashmap

Algoritma ini menerangkan cara menukar

ke

. ArrayList HashMap

    Langkah 1:
  1. Mula.
  2. Langkah 2:
  3. Mengisytiharkan dan mengimport pakej Java yang diperlukan.
  4. Langkah 3:
  5. Buat senarai awam.
  6. Langkah 4:
  7. Mengisytiharkan pasangan nilai kunci.
  8. Langkah 5:
  9. Buat pembina untuk nilai yang dirujuk.
  10. Langkah 6: Berikan nilai kepada kekunci yang diisytiharkan.
  11. Langkah 7:
  12. Kembalikan ID pembolehubah peribadi.
  13. Langkah 8:
  14. Mengisytiharkan kelas dan kaedah awam.
  15. Langkah 9:
  16. Mengisytiharkan rentetan parameter.
  17. Langkah 10:
  18. Buat
  19. . ArrayList Langkah 11:
  20. Gunakan elemen data untuk mengisi nilai senarai.
  21. Langkah 12:
  22. Buat dan mengisytiharkan nilai pemetaan.
  23. Langkah 13:
  24. Mengisytiharkan kaedah objek.
  25. Langkah 14:
  26. Buat nilai peta objek.
  27. Langkah 15:
  28. Tambah setiap elemen data ke peta.
  29. Langkah 16:
  30. Cetak nilai peta dan akhir.
  31. sintaks: tukar arraylist ke hashmap

Berikut adalah beberapa coretan kod sampel:

Coretan ini menunjukkan cara menukar

ke
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);
}
Salin selepas log masuk
.

ArrayList HashMap kaedah

kami akan memperkenalkan dua kaedah:

Kaedah 1: Gunakan lelaran dan

Kaedah ini melangkah secara langsung dan menambah setiap elemen ke Collectors.toMap().

ArrayList Kaedah 2: Gunakan Java 8 Stream API dan HashMap

// 示例代码 (假设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));
Salin selepas log masuk
Jika anda perlu kumpulan, anda boleh menggunakan kaedah

. Collectors.groupingBy() Melalui kaedah di atas, anda boleh memilih kaedah yang sesuai untuk menukar

ke

mengikut keperluan sebenar. Ingatlah untuk menangani kekunci pendua yang berpotensi, seperti menggunakan parameter ketiga Collectors.groupingBy() untuk menentukan fungsi gabungan. Pilih

untuk mengekalkan urutan penyisipan.
// 示例代码 (假设ArrayList包含自定义对象,需要按类别分组)
class Product {
    private String category;
    private String name;
    // ... getters and setters ...
}

// ...

List<Product> products = new ArrayList<>();
// ... populate products list ...

Map<String, List<Product>> productMap = products.stream()
        .collect(Collectors.groupingBy(Product::getCategory));
Salin selepas log masuk

Atas ialah kandungan terperinci Tukar ArrayList ke HashMap di Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Isu terkini
Bolehkah java digunakan sebagai bahagian belakang web?
daripada 1970-01-01 08:00:00
0
0
0
Tidak dapat memasang java
daripada 1970-01-01 08:00:00
0
0
0
Pasang JAVA
daripada 1970-01-01 08:00:00
0
0
0
Bagaimanakah php melaksanakan penyulitan sha1 java?
daripada 1970-01-01 08:00:00
0
0
0
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan