【夜斗全栈之Java篇】一:Arraylist
2021/5/5 12:27:15
本文主要是介绍【夜斗全栈之Java篇】一:Arraylist,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
微微晨光点亮这喧嚣世界
集合类(存储的数据容量可以发生改变,提供一种存储空间可变的存储模型)有很多,今天我们介绍一个:ArrayList
ArrayList
<
E
>
<E>
<E>:(可调整大小的数组实现,后面的E是泛型)
ArrayList < S t r i n g > <String> <String>, ArrayList < S t u d e n t > <Student> <Student>(用数据类型替换E)
一:ArrayList构造方法和添加方法
小夜斗首先新建了一个项目,结构如下所示:
首先我们创建一个集合,代码如下:
ArrayList<String> array = new ArrayList<String>();
package com.yedou_01; import java.util.ArrayList; public class ArrayListDe01 { public static void main(String[] args) { // public ArrayList(): 创建一个空的集合对象 // jdk7以后的新特性,第一个创建集合的方式(注释的) // ArrayList<String> array = new ArrayList<>(); ArrayList<String> array = new ArrayList<String>(); // 输出集合 System.out.println("array:" + array); } }
打印输出集合,内容如下所示:
添加三个元素后的代码如下所示:array.add("夜斗小神社");
package com.yedou_01; import java.util.ArrayList; public class ArrayListDe01 { public static void main(String[] args) { // public ArrayList(): 创建一个空的集合对象 // ArrayList<String> array = new ArrayList<>(); ArrayList<String> array = new ArrayList<String>(); // public boolean add(E, e): 将指定的元素追加到末尾 // 打印输入是否成功 System.out.println(array.add("hello")); // 输入hello array.add("夜斗小神社"); array.add("夜斗全栈之路"); // 输出集合 System.out.println("array:" + array); } }
结果如下:
在指定位置插入元素:array.add(1,"欢迎来到");
package com.yedou_01; import java.util.ArrayList; public class ArrayListDe01 { public static void main(String[] args) { // public ArrayList(): 创建一个空的集合对象 // ArrayList<String> array = new ArrayList<>(); ArrayList<String> array = new ArrayList<String>(); // public boolean add(E, e): 将指定的元素追加到末尾 // 打印输入是否成功 System.out.println(array.add("hello")); // 输入hello array.add("夜斗小神社"); array.add("夜斗全栈之路"); // 制定位置插入元素 array.add(1,"欢迎来到"); // 输出集合 System.out.println("array:" + array); } }
不过这个方法有越界问题:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 4, Size: 3
array.add(4,"欢迎来到");
如果按照上面这样写的话,因为只有三个元素,Size小于index,所以有越界的报错!
二:ArrayList集合常用方法
首先我们创建一个集合ArrayList,如下所示:
package com.yedou_01; import java.util.ArrayList; public class ArrayListDe02 { public static void main(String[] args) { ArrayList<String > array = new ArrayList<String >(); array.add("欢迎来到"); array.add("夜斗全栈"); array.add("之路"); System.out.println("array: " + array); } }
array: [欢迎来到, 夜斗全栈, 之路]
- 删除元素:
System.out.println(array.remove("欢迎来到"));
- 根据索引 :
System.out.println(array.remove(0));
- 修改元素:
System.out.println(array.set(0,"你好!"));
- 获取元素:
System.out.println(array.get(0));
- 集合个数:
System.out.println(array.size());
整个代码如下所示:
package com.yedou_01; import java.util.ArrayList; public class ArrayListDe02 { public static void main(String[] args) { ArrayList<String > array = new ArrayList<String >(); array.add("欢迎来到"); array.add("夜斗全栈"); array.add("之路"); // 删除欢迎来到 // 显示是否删除成功 System.out.println(array.remove("欢迎来到")); // 根据索引删除 System.out.println(array.remove(0)); // 修改元素数值 System.out.println(array.set(0,"你好!")); // 返回指定索引处元素 System.out.println(array.get(0)); // 返回集合个数 System.out.println(array.size()); // 打印数组 System.out.println("array: " + array); } }
三:ArrayList存储字符并遍历集合
”我是要成为海贼王的男人!"
我们添加草帽一行人的名字和梦想,并且循环打印出来:
package com.yedou_02; import java.util.ArrayList; public class ArrayListTest01 { public static void main(String[] args) { // 创建对象 ArrayList<String> array = new ArrayList<String>(); // 添加对象 array.add("路飞: 我是要成为海贼王的男人"); array.add("索隆:我要成为世界第一大剑豪"); array.add("山治:我一定要找到All Blue!"); array.add("罗宾:我一定要找出空白100年历史"); array.add("娜美:我要找到世界上所有的宝藏"); array.add("乔巴:我我我的赏金为什么这么低"); array.add("弗兰奇:我打造的桑尼号最拉风!"); array.add("布鲁克:我身体,不我只是一把老骨头!"); array.add("乌索普:我得了不能够敲代码的病!"); array.add("甚平:我可是要成为海贼王男人的船员!"); // 遍历对象 for(int i=0; i<array.size(); i++) { // 获取元素 String s = array.get(i); // 打印元素 System.out.println(s); } } }
四:存储草帽海贼王对象并遍历
1:创建草帽类HatPirateGroup
(set,get快捷键(alt + insert))
package com.yedou_02; /* 草帽类 */ public class HatPirateGroup { private String name; private String sentence; // 无参 public HatPirateGroup(){} // 有参 public HatPirateGroup(String name, String sentence){ this.name = name; this.sentence = sentence; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSentence() { return sentence; } public void setSentence(String sentence) { this.sentence = sentence; } }
2: 创建一个存储草帽海贼成员的集合,并循环打印
package com.yedou_02; import java.util.ArrayList; public class ArrayListTest02 { public static void main(String[] args) { // 创建集合对象 ArrayList<HatPirateGroup> array = new ArrayList<HatPirateGroup>(); // 创建海贼对象 HatPirateGroup s1 = new HatPirateGroup("路飞:", "我是要成为海贼王的男人"); HatPirateGroup s2 = new HatPirateGroup("索隆:","我要成为世界第一大剑豪"); HatPirateGroup s3 = new HatPirateGroup("山治:","我一定要找到All Blue!"); // 添加海贼到草帽海贼团中 array.add(s1); array.add(s2); array.add(s3); // 遍历集合 for(int i=0; i<array.size(); i++){ HatPirateGroup s = array.get(i); System.out.println(s.getName()+ s.getSentence()); } } }
五:键盘录入草帽海贼王对象并遍历
1:创建草帽类HatPirateGroup
(set,get快捷键(alt + insert))
package com.yedou_02; /* 草帽类 */ public class HatPirateGroup { private String name; private String sentence; // 无参 public HatPirateGroup(){} // 有参 public HatPirateGroup(String name, String sentence){ this.name = name; this.sentence = sentence; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSentence() { return sentence; } public void setSentence(String sentence) { this.sentence = sentence; } }
2:键盘输入海贼信息,调用方法加入到集合当中
package com.yedou_03; import java.util.ArrayList; import java.util.Scanner; public class ArrayTest { public static void main(String[] args) { // 创建集合对象 ArrayList<HatPirateGroup> array = new ArrayList<HatPirateGroup>(); // 调用方法 addPirate(array); addPirate(array); addPirate(array); // 遍历集合 for(int i=0; i<array.size(); i++){ HatPirateGroup s = array.get(i); System.out.println(s.getName() + s.getSentence()); } } public static void addPirate(ArrayList<HatPirateGroup> array){ /* 方法:返回值类型和参数 */ // 键盘录入数据 Scanner sc = new Scanner(System.in); System.out.println("输入海贼姓名:"); String name = sc.nextLine(); System.out.println("请输入句子:"); String sentence = sc.nextLine(); // 创建海贼对象 HatPirateGroup s = new HatPirateGroup(); s.setName(name); s.setSentence(sentence); // 往集合中添加学生对象 array.add(s); } }
- 在这个星球上,你很重要,请珍惜你的珍贵! ~~~夜斗小神社
这篇关于【夜斗全栈之Java篇】一:Arraylist的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南