zoukankan      html  css  js  c++  java
  • ArrayList的使用方法

    从百度上看到关于ArrayList的使用方法,就自己照着敲了一遍记录下来

     ArrayList就是动态数组,Java的链表类

    按照顺序向ArrayList中添加数据。

    将a添加到list中:list.add("a");

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println(list);
    
        }
    
    }

    结果:

    [a, b]

    在第N个数据后面添加一个数据

    在第1个元素后面添加 e  :list.add(1, "e");

    注意:ArrayList中必须有足够多的数据,例如ArrayList中没有任何数据,这个时候使用arraylist.add(1, "E");就会出现java.lang.IndexOutOfBoundsException异常。

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println(list);
            list.add(1,"c");
            System.out.println(list);
    
        }
    
    }

    结果:

    [a, b]
    [a, c, b]

    将一个ArrayList中的所有数据添加到另外一个ArraList中

    将list1中的全部数据添加到list中:list.addAll(list1);

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            ArrayList<String> list1 = new ArrayList<String>();
            list1.add("c");
            list1.add("d");
            System.out.println("list1:"+list1);
            list.addAll(list1);
            System.out.println("list1添加到list中:"+list);
        }
    
    }

    结果:

    list:[a, b]
    list1:[c, d]
    list1添加到list中:[a, b, c, d]

    将一个ArrayList中的所有数据添加到另外一个ArraList中的第N个元素之后。

    将list1中的全部数据添加到list中的第2个元素之后:list1.addAll(2,list);

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            ArrayList<String> list1 = new ArrayList<String>();
            list1.add("c");
            list1.add("d");
            System.out.println("list1:"+list1);
            list.addAll(1,list1);
            System.out.println("list1添加到list中:"+list);
        }
    
    }

    结果:

    list:[a, b]
    list1:[c, d]
    list1添加到list中:[a, c, d, b]

    按照位置删除单个数据

    将list中第2个数据删除:list.remove(2);

    注意:位置从0开始计算(0、1、2、3...)

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            list.remove(0);
            System.out.println("删除后list:"+list);
    
        }
    
    }

    结果:

    list:[a, b]
    删除后list:[b]

    按照内容删除单个数据

    用法:将list中的数据"b"删除:list.remove("b");

    注意:对于int,String,char这样的原始类型数据是可以删除的,但是对于复杂对象,例如自己编写的User类、Person类对象,需要重写equals方法,负责remove方法无法匹配删除。

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            list.remove("a");
            System.out.println("删除后list:"+list);
        }
    
    }

    结果:

    list:[a, b]
    删除后list:[b]

    按照集合同时删除多个数据

    按照list1中的数据来删除list:list.removeAll(list1);

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            ArrayList<String> list1 = new ArrayList<String>();
            list1.add("c");
            list1.add("b");
            System.out.println("list1:"+list1);
            list.removeAll(list1);
            System.out.println("删除后list:"+list);
            
        }
    
    }

    结果:

    list:[a, b]
    list1:[c, b]
    删除后list:[a]

    清空ArrayList

    清空list:list.clear();

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            list.clear();
            System.out.println("清空后list:"+list);
            
        }
    
    }

    结果:

    list:[a, b]
    清空后list:[]

    修改指定位置的元素

    将list中第2个元素,修改为M:list.set(2, "M");

    注意:位置从0开始计算(0、1、2、3...)

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            list.set(1,"M");
            System.out.println("修改后list:"+list);
            
        }
    
    }

    结果:

    list:[a, b]
    修改后list:[a, M]

    获取指定位置元素

    获取list中第1个元素:String ele = list.get(0);

    注意:位置从0开始计算(0、1、2、3...)

    package com.arraylist.demo;
    
    import java.util.ArrayList;
    
    public class add {
    
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList<String>();
            //添加数据
            list.add("a");
            list.add("b");
            System.out.println("list:"+list);
            String ele = list.get(0);
            System.out.println("获取的值:"+ele);
            
        }
    
    }

    结果:

    list:[a, b]
    获取的值:a

    拷贝结束,继续我的代码修炼之路了~ ~ ~

  • 相关阅读:
    《Kubernetes权威指南第2版》学习(四)kubernetes基本概念和术语
    《Kubernetes权威指南第2版》学习(三)RC学习
    HTTP 1.1 的HOST 与 虚拟IP(待续)
    HTTP 2 VS HTTP 1.1
    HTTP 的若干问题
    HTTP 协议入门(转载)
    java web 基础 json 和 javaBean转化
    java web基础学习 Forward和Redirect区别
    【雅思】金山词霸-单词学习(41-80)
    【数据库】left join(左关联)、right join(右关联)、inner join(自关联)的区别
  • 原文地址:https://www.cnblogs.com/liurg/p/7928045.html
Copyright © 2011-2022 走看看