Rumah > Java > javaTutorial > teks badan

Cara menggunakan Java ArrayList, LinkedList dan HashMap

王林
Lepaskan: 2023-04-27 15:58:07
ke hadapan
1583 orang telah melayarinya

    1.ArrayList

    1 Prinsip

    Cara menggunakan Java ArrayList, LinkedList dan HashMap

    2 >Buka projek baharu dalam Idea, klik kanan src untuk mencipta pakej baharu com.my.Container, dan kemudian buat Container.class Masukkan kod berikut

    package com.my.Container;
    import java.util.ArrayList;
    import java.util.Random;
    public class Container {
        public static void main(String[] args) {
            ArrayList<String> names = new ArrayList<>();//创建一个ArrayList对象,指定这个对象存储String对象元素。
            names.add("我是一号");
            names.add("我是二号");//向容器中添加两个元素
            System.out.println(names);//查看容器有多少个元素
            names.remove(0); //删除下标位置是0的元素
            System.out.println(names);//查看容器有多少个元素
            names.set(0,"我是三号"); //修改位置是0 的元素,改为 明天
            System.out.println(names);//查看容器有多少元素
            names.clear();//清空容器的所有元素
            //循环添加10个元素
            Random random = new Random();
            for (int i = 0 ; i < 10 ;i++){
                names.add("我是第"+random.nextInt(50)+"名");
            }
            for(int i=0; i<names.size(); i++){                            //遍历容器中的元素,把所有元素都访问一遍
                System.out.println("第"+(i+1)+"个元素为:" + names.get(i));  // get方法,根据下标获取元素.
            }
        }
    }
    Salin selepas log masuk

    untuk menjalankan kod dan rasai pelaksanaannya operasi tambah, padam, ubah suai dan semak bekas ArrayList.

    2. LinkedList

    1. Prinsip

    Cara menggunakan Java ArrayList, LinkedList dan HashMap2 kod berikut

    package com.my.Container;
    import java.util.ArrayList;
    import java.util.LinkedList;
    import java.util.Random;
    public class linkedlist {
        public static void main(String[] args) {
            LinkedList<String> linkedNames = new LinkedList<>();//创建一个 LinkedList 对象 linkedNames,是用链表结构存储元素数据的
            linkedNames.add("我是1");
            linkedNames.add("我是2");
            linkedNames.add("我是3");//增加3个元素
            linkedNames.remove(1);//删除下标为1的元素
            linkedNames.set(1,"我是4");//修改下标为1的元素
            System.out.println(linkedNames);
            //linkedNames.clear();//清空容器的所有元素
            Random random2 = new Random();//循环添加10个元素
            for (int i = 0 ; i < 10 ;i++){
                linkedNames.add("我是"+random2.nextInt(100));
            }
            for(int i=0; i<linkedNames.size(); i++){ //遍历容器中的元素,把所有元素都访问一遍
                System.out.println("第"+(i+1)+"个元素为:" + linkedNames.get(i));  // get方法,根据下标获取元素
            }
        }
    }
    Salin selepas log masuk

    Jalankan kod dan alami pelaksanaan operasi tambah, padam, ubah suai dan pertanyaan bekas ArrayList (hampir sama dengan ArrayList).

    3. HashMap

    1. Prinsip

    2 kod berikut

    package com.my.Container;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.LinkedList;
    import java.util.Random;
    public class hashmap {
        public static void main(String[] args) {
            HashMap<String,String> mapNames = new HashMap<>();//创建一个 HashMap 对象 mapNames,是用链表结构存储元素数据的
            mapNames.put("NO1","我是1号");
            mapNames.put("NO2","我是2号");
            mapNames.put("NO3","我是3号"); //增加3个元素
            mapNames.remove("NO2");   //删除第二个元素
            mapNames.put("NO4","我是5号");  //修改第2个元素
            System.out.println(mapNames); //打印mapNames中所有元素
            mapNames.clear();//清空mapNames元素
            Random random3 = new Random();  //循环添加10个元素
            for (int i = 0 ; i < 10 ;i++){
                mapNames.put("NO"+i,"嫦娥"+random3.nextInt(100)+"号");
            }
            int i = 0;  //遍历容器中的元素,把所有元素都访问一遍
            for(String key :mapNames.keySet()){ //先获取key的集合,然后遍历每个key,
                i++; //定义i用来计数
                System.out.println("第"+(i+1)+"个元素为:"+ mapNames.get(key));  // get方法,根据key 获取元素
            }
        }
    }
    Salin selepas log masuk
    Cara menggunakan Java ArrayList, LinkedList dan HashMapJalankan kod di atas untuk mengalami operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan HashMap.

    Keputusan larian adalah seperti berikut:

    4. Membandingkan kelebihan, kekurangan dan perbezaan

    Di sini kami memahami kelebihan dan kekurangannya. kelemahan ArrayList dan LinkedList, iaitu Perbezaan antara mereka

    Cara menggunakan Java ArrayList, LinkedList dan HashMap1 Lapisan bawah ArrayList ialah struktur tatasusunan, dan lapisan bawah LinkList ialah struktur senarai terpaut.

    2.LinkedList menggunakan senarai terpaut untuk menyimpan elemen, yang mempunyai kecekapan sisipan dan pemadaman yang tinggi, tetapi kecekapan membaca rawak yang rendah.

    3.ArrayList menggunakan tatasusunan untuk menyimpan elemen Kecekapan pemasukan dan pemadaman adalah rendah, tetapi kecekapan membaca rawak adalah tinggi.

    Anda boleh mengatakan ini: Apabila operasi adalah untuk menambah data selepas lajur data dan bukannya di hadapan atau tengah, dan anda perlu mengakses elemen secara rawak, menggunakan ArrayList akan memberikan prestasi yang lebih baik apabila operasi anda Apabila anda menambah atau memadam data di hadapan atau di tengah-tengah lajur data dan mengakses elemen mengikut tertib, anda harus menggunakan LinkedList.

    ArrayList dan LinkedList masing-masing mempunyai kelebihan dan kekurangan masing-masing dari segi prestasi, dan masing-masing mempunyai aplikasi tersendiri Berikut adalah ringkasan beberapa perbandingan prestasi dalam jadual berikut

    <.>

    Atas ialah kandungan terperinci Cara menggunakan Java ArrayList, LinkedList dan HashMap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Label berkaitan:
    sumber:yisu.com
    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
    Tutorial Popular
    Lagi>
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!