Java Arrays.asList()
方法
原文:https://www.studytonight.com/java-util/java-arrays-aslist-method
在本教程中,我们将通过一些直观的例子从位于 java.util 包中的数组类中学习asList()
方法。此方法充当基于数组和基于集合的 API 之间的通道。它主要用于从任何类型的数组创建列表。
语法:
public static List asList(T... arr)
此方法接收包装类数组作为参数,然后返回数组元素列表。如果数组为空,它将返回NullPointerException
。
示例:从字符串数组获取列表
在下面的例子中,我们有一些Strings
的数组。调用Arrays.asList()
后,我们将其分配给List<String>
列表,这意味着我们的数组被转换为List<String>
,这就是 asList()
方法的工作方式。
import java.util.Arrays;
import java.util.List;
public class StudyTonight
{
public static void main(String[] args)
{
String arr[]= new String[] { "Java", "C", "C++", "Python" };
List<String> list = Arrays.asList(arr);
System.out.println("List: " + list);
}
}
列表:【Java、C、C++、Python】
示例:从整数数组获取列表
类似于上面的例子,这里我们使用了Integer
类。在下面给出的代码中,我们将Integer
类的数组转换为整数列表。
import java.util.Arrays;
import java.util.List;
public class StudyTonight
{
public static void main(String[] args)
{
Integer arr[]= new Integer[] { 12, 34, 22, 87, 98 };
List<Integer> list = Arrays.asList(arr);
System.out.println("List of Integers: " + list);
}
}
名单:[12、34、22、87、98]
示例:从几种类型的数组中获取列表
在这个例子中,我们有几个类型为 float、byte、short 等的数组,并通过使用Arrays
类的asList()
方法获得每个类型的列表。
import java.util.Arrays;
import java.util.List;
public class Main
{
public static void main(String[] args)
{
Float arr1[]= new Float[] { 12.5f, 34.2f, 22.22f, 87.1f, 98.3f };
List<Float> list1 = Arrays.asList(arr1);
System.out.println("List of Integers: " + list1);
Byte arr2[]= new Byte[] { 12, 34, 22, 87, 98 };
List<Byte> list2 = Arrays.asList(arr2);
System.out.println("List of Integers: " + list2);
Boolean arr3[]= new Boolean[] { true, false, false};
List<Boolean> list3 = Arrays.asList(arr3);
System.out.println("List of Integers: " + list3);
Short arr4[]= new Short[] { 12, 34, 22, 87, 98 };
List<Short> list4 = Arrays.asList(arr4);
System.out.println("List of Integers: " + list4);
}
}
整数列表:[12.5,34.2,22.22,87.1,98.3] 整数列表:[12,34,22,87,98] 整数列表:[真,假,假] 整数列表:[12,34,22,87,98]
这个方法只适用于 java 中的包装类数组,比如 Integer、Strings 等。否则,它将返回一个不需要的列表类型,这可能会导致以后出现问题。
结论:
asList()方法用于将数组转换为元素列表。此方法接受一个数组并返回该指定数组的列表。这个方法可以在不创建对象的情况下调用,因为这是静态方法,我们可以通过类名直接调用它。