一、
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]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/119909.html