ArrayList常用方法

一、

ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。

ArrayList 继承了 AbstractList ,并实现了 List 接口。

二、添加元素

ArrayList 类提供了很多有用的方法,添加元素到 ArrayList 可以使用 add() 方法

代码如下:

public class testList {
    public static void main(String[] args) {
        //创建ArrayList对象,泛型为String类型
        ArrayList<String> list = new ArrayList<>();
        //添加元素
        list.add("添");
        list.add("加");
        list.add("元");
        list.add("素");
        System.out.println(list);
    }
}

运行结果:

[添, 加, 元, 素]

2.添加集合中的元素到ArrayList中

代码如下:

public class testList {
    public static void main(String[] args) {
        //创建ArrayList对象,泛型为String类型
        ArrayList<String> list = new ArrayList<>();
        //添加元素
        list.add("添");
        list.add("加");
        list.add("元");
        list.add("素");
        ArrayList<String> strings = new ArrayList<>();
        strings.add("A");
        strings.add("B");
        strings.add("C");
        strings.add("D");
        list.addAll(strings);
        System.out.println(list);
    }
}

运行结果:

[添, 加, 元, 素, A, B, C, D]

三、访问元素

访问 ArrayList 中的元素可以使用 get() 方法

public class testList {
    public static void main(String[] args) {
        //创建ArrayList对象,泛型为String类型
        ArrayList<String> list = new ArrayList<>();
        //添加元素
        list.add("添");
        list.add("加");
        list.add("元");
        list.add("素");
        System.out.println(list.get(0));
        System.out.println(list.get(1));
        System.out.println(list.get(2));
        System.out.println(list.get(3));
    }
}

运行结果:




四、修改元素

修改 ArrayList 中的元素可以使用 set() 方法

代码如下:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    list.set(0,"修改元素");//第一个参数为需要修改元素的索引,第二个参数为修改的值
    System.out.println(list);
}

运行结果:

[修改元素, 加, 元, 素]

五、删除元素

删除 ArrayList 中的元素可以使用 remove() 方法:

代码如下:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    list.remove(0);//参数为元素的索引
    System.out.println(list);
}

运行结果:

[加, 元, 素]

六:元素数量

ArrayList 中的元素数量可以使用 size() 方法,返回值int类型

代码如下:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    int size = list.size();
    System.out.println(size);
}

运行结果:

4

七、迭代数组

迭代可以使用普通fro循环,for循环,foreach(Lambda 表达式)

代码如下:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    for (int i = 0; i < list.size(); i++) {
        System.out.println("普通for循环---"+list.get(i));
    }

    for (String s : list) {
        System.out.println("for循环---"+s);
    }
    list.forEach(l->{
        System.out.println("forEach---"+l);
    });
}

运行结果:

普通for循环---添
普通for循环---加
普通for循环---元
普通for循环---素


for循环---添
for循环---加
for循环---元
for循环---素


forEach---添
forEach---加
forEach---元
forEach---素

八、删除全部元素

方法:clear()

代码:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    list.clear();
    System.out.println(list);
}

运行结果:

[ ]

九:复制一份 arraylist

方法:clone()

代码:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    Object clone = list.clone();
    System.out.println("原ArrayList------------"+list);
    System.out.println("复制ArrayList----------"+clone);
}

运行结果:

原ArrayList------------[添, 加, 元, 素]
复制ArrayList----------[添, 加, 元, 素]

十、判断 arraylist 是否为空

方法:isEmpty()

代码:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    ArrayList<String> stringArrayList = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    boolean empty = list.isEmpty();
    
    boolean empty1 = stringArrayList.isEmpty();
    
    System.out.println(empty);
    
    System.out.println(empty1);
}

运行结果:

false
true

十一、截取部分 arraylist 的元素

方法:subList()    第一个参数为开始元素索引,第二个参数为结果

代码:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    List<String> strings = list.subList(0, 2);//第一个参数为开始元素索引,第二个参数为结果元素索引
    System.out.println(strings);
}

运行结果:[添, 加]

十二、将 arraylist 转换为字符串

方法:toString()

代码:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    String s = list.toString();
    System.out.println(s);
}

运行结果:

[添, 加, 元, 素]

十三、将 arraylist 转换为数组

方法:toArray()

代码:

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("添");
    list.add("加");
    list.add("元");
    list.add("素");
    Object[] objects = list.toArray();
    for (Object object : objects) {
        System.out.println(object);
    }
}

运行结果:




十四、对 arraylist 元素进行排序,

方法:sort()

// 元素进行升序排列

sort(Comparator.naturalOrder())

//元素进行降序排序

sort(Comparator.reverseOrder())

代码:

     

public static void main(String[] args) {
    //创建ArrayList对象,泛型为String类型
    ArrayList<String> list = new ArrayList<>();
    //添加元素
    list.add("B");
    list.add("C");
    list.add("A");
    list.add("D");
    System.out.println("不排序-----"+list);
    // 元素进行升序排列
    list.sort(Comparator.naturalOrder());
    System.out.println("升序排列----"+list);
    //元素进行降序排序
    list.sort(Comparator.reverseOrder());
    System.out.println("降序排序----"+list);
}

运行结果:

不排序-----[B, C, A, D]
升序排列----[A, B, C, D]
降序排序----[D, C, B, A]


                
  • 2
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值