Java中的ArrayList

ArrayList<E>的特点

  1. 可调整大小的数组实现

  2. <E>:是一种数据类型

ArrayList的构造方法

ArrayList list = new ArrayList();创建一个空的集合对象

复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        System.out.println(list);
    }
}
​

ArrayList中的添加元素

复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        list.add(1,"first");
        System.out.println(list);
    }
}
​

用add添加元素

  1. 第一种直接添加元素,会按照之前添加的先后顺序添加

  2. 先输入要添加元素的位置再添加元素(注意不能在超出元素长度的位置添加,会报越界错误

ArrayList的常用方法

  1. public Boolean remove(Object)删除指定的元素,返回是否删除成功

  2. public E remove(int index)删除索引处的元素,返回被删除的元素

  3. public E set(int index,E element)修改指定索引出的元素,返回被修改的值

  4. public E get(int index)返回指定索引处的元素

  5. public int size()返回集合中的元素个数

复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        System.out.println(list.remove("world"));
        System.out.println(list.remove("like"));
        System.out.println(list);
    }
}
​
复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        System.out.println(list.remove(1));
        System.out.println(list);
    }
}
​
复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        System.out.println(list.set(1,"first"));
        System.out.println(list);
    }
}
​

注意设置元素位置的时候索引不要越界

复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        System.out.println(list.get(0));
        System.out.println(list);
    }
}
​

注意设置元素get的时候索引不要越界否则会报IndexOutOfBoundsException

复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        System.out.println(list.size());
        System.out.println(list);
    }
}
​

ArrayList的遍历

  1. 用for循环再加上get方法去遍历

  2. 用增强for遍历

复制代码
package dayhou40.day45;
​
import java.util.ArrayList;
​
public class Arraylisttest {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("hello");
        list.add("world");
        list.add("good");
        for (int i = 0; i < list.size(); i++) {
            String s = list.get(i);
            System.out.print(s+" ");
        }
        System.out.println("\n====================");
        for (String s : list) {
            System.out.print(s+" ");
        }
    }
}
​
相关推荐
爬山算法21 小时前
Hibernate(85)如何在持续集成/持续部署(CI/CD)中使用Hibernate?
java·ci/cd·hibernate
菜鸟233号21 小时前
力扣647 回文子串 java实现
java·数据结构·leetcode·动态规划
qq_124987075321 小时前
基于Java Web的城市花园小区维修管理系统的设计与实现(源码+论文+部署+安装)
java·开发语言·前端·spring boot·spring·毕业设计·计算机毕业设计
h7ml21 小时前
查券返利机器人的OCR识别集成:Java Tesseract+OpenCV优化图片验证码的自动解析方案
java·机器人·ocr
野犬寒鸦21 小时前
从零起步学习并发编程 || 第五章:悲观锁与乐观锁的思想与实现及实战应用与问题
java·服务器·数据库·学习·语言模型
Volunteer Technology1 天前
Sentinel的限流算法
java·python·算法
岁岁种桃花儿1 天前
SpringCloud从入门到上天:Nacos做微服务注册中心
java·spring cloud·微服务
jdyzzy1 天前
什么是 JIT 精益生产模式?它与传统的生产管控方式有何不同?
java·大数据·人工智能·jit
Chasmれ1 天前
Spring Boot 1.x(基于Spring 4)中使用Java 8实现Token
java·spring boot·spring
汤姆yu1 天前
2026基于springboot的在线招聘系统
java·spring boot·后端