本教程介绍了java中ArrayList的基础知识、特点和最佳实例。
Java中的ArrayList
ArrayList 是 java.util包中List 接口的实现。
它按照插入的顺序存储对象的集合。ArrayList 存储对象并增加列表dynamically 的大小,这就是为什么数组列表是一个可调整大小的数组。而一个array 是static ,一旦分配了值,大小就固定了。
在实时编程中,ArrayList被用来操作自定义对象的集合。
ArrayList是一个流行的集合框架,在Java开发者的日常生活中使用。
ArrayList需要记住的要点
-
存储在ArrayList中的对象是插入式的。
-
ArrayList是用来存储对象的集合,其大小是动态增加的。
-
它是一个动态的数组,当元素被添加时,它的大小会增加,当元素被删除时,它的大小会缩小。
-
ArrayList存储的对象包括空值。
-
ArrayList是不同步的
-
这些都是不排序的
-
在学校管理应用程序中,你有一个存储在数据库中的学生名单。为了在用户界面上显示这些学生,你必须调用数据库并将这些元素存储在List集合中,然后在用户界面上填充这些列表元素。这里List被用作临时对象来保存元素。
-
当你对任何数据库条目进行CRUD操作时,ArrayList被用来在临时缓存机制中存储这些对象。
如何创建一个ArrayList
ArrayList有默认的构造函数,也有一个带整数参数的构造函数。
ArrayList也可以用整数进行初始化。
ArrayList emptylist=new ArrayList(); or
ArrayList list=new ArrayList(10);
上面几行代码创建了一个ArrayList对象,其大小为空,也是数组列表的固定大小。第二种情况,固定大小为10。
,其他方法是ArrayList也可以用默认值创建和初始化。
ArrayList list = new ArrayList() {{
add("one");
add("two");
add("three");
}};
如何向ArrayList添加对象?
ArrayList提供了add方法来添加对象到ArrayList
这里有一个例子
ArrayList list=new ArrayList<>();
list.add("One");
list.add("Two");
list.add("Three");
list.add("Four");
list.add("Five");
如何遍历ArrayList中的元素?
使用for each look,我们可以遍历列表中的每个对象
for (Object str : list) {
System.out.print(" " + (String) str);
}
输出:
One Two Three Four Five
一定要确保对列表进行null检查,因为如果列表为null,它将抛出NullPointerException 。
为避免NullPointerException ,请添加以下代码片段在ArrayList
if(list!=null){
add the for loop code here
}
如何找到ArrayList的大小?
Java ArrayList API提供了size() 方法来查找ArrayList中的元素数量
list.size()
返回列表的大小,上述代码中返回4。
如何检查对象/元素是否在ArrayList中被找到?
ArrayList提供了contains() 方法,如果在系统中找到特定的对象,则返回true。
System.out.print(" " + list.contains("One"));
还有一种方法是使用indexOf()方法来获取ArrayList中元素的索引。如果在
阵列列表中找到该元素,该方法将返回位置,否则如果该元素/对象在阵列列表中不可用,则返回-1。
如何将ArrayList转换为数组?
由于数组列表到数组是日常编程中常见的机制之一。
collection API提供了arrayList.toArray() 方法,用于转换为对象的数组
String[] strArray=(String [])list.toArray(new String[list.size()]);
for (Object str : strArray) {
System.out.print(" " + (String) str);
}
`
的方法,其输出结果是
One Two Three Four Five
如何在java中把数组转换为ArrayList?
要将array 转换为ArrayList ,collection API提供了java.util.Arrays类asList() 方法,该方法接受ArrayList。
String[] strObjects = {"One1", "two2", "three3", "four4"};
List arrayList= new ArrayList(Arrays.asList(strObjects));
如何移除/删除列表中的一个元素
ArrayList 必须使用 remove方法从列表中删除对象。
arrayList.remove("one");
如何从列表中获取元素?
列表提供get() 方法来返回在列表中找到的对象。
list.get("one")
如果没有找到该元素,则返回null 。
如何给ArrayList中的对象排序?
如果我们从列表中显示对象,它们的顺序只是插入顺序。
,对ArrayList中的对象进行排序,集合API提供Collections.sort(List)方法,以自然顺序排序。
Collections.sort(list); // natural order
Collections.reverse(list); // natural order
这个元素按哈希码的自然顺序排序,也等于方法的默认执行顺序。
如果我们想为原始类型或基于成员变量的对象显示自定义顺序,我们必须编写我们的自定义comparable java类,该类作为另一个参数传递给Collections.sort()方法。
Collections.sort(list,Comparable interface);
java8迭代列表
java8提供了带有lambda表达式的forEach循环来迭代列表中的元素。
list.forEach(item -> System.out.println(item));
我希望你得到了关于数组列表的基本概念和工作实例。
请分享您的意见。