将Java数组转换为集合
Java 集合 提供了一种存储和操作一组对象的架构。数据类型可以更改为一般数据类型,如将数组转换为集合。要将基于数组的数据转换为基于集合的数据,我们可以使用 java. util. Arrays类 。该类提供了一个静态方法asList(T… a),将数组转换为集合。
步骤:
- 定义一个编写逻辑的函数
- 从用户输入获取数组输入
- 使用 asList() 函数将数组输入转换为 集合
使用的方法:
1. asList(): 这是 java.util.Arrays 类的方法,用于返回由指定数组支持的固定大小列表,充当基于数组和基于集合的API之间的桥梁,与Collection.toArray()一起使用。
这需要O(1)时间。
示例1:
//将Java数组转换为集合
//导入java util库
import java.util.*;
//编写问题逻辑的类
public class ArrayToCollection {
public static void main(String args[]) {
//数组输入
String playersArray[] = {"Virat", "Sachin", "Rohit", "Bumrah"};
//输出输入的元素以供比较
System.out.println("Array input: " + Arrays.toString(playersArray));
//使用asList()函数将数组转换为集合
List playersList = Arrays.asList(playersArray);
//输出转换后的元素
System.out.println("Converted elements: " + playersList);
}
}
输出结果:
Array input: [Virat, Sachin, Rohit, Bumrah]
Converted elements: [Virat, Sachin, Rohit, Bumrah]
示例2:
//将Java数组转换为集合
//导入java util库
import java.util.*;
public class ArrayToCollection {
public static void main(String args[]) {
String countryArray[] = {"India", "Pakistan", "Afganistan", "Srilanka"};
System.out.println("Array input: " + Arrays.toString(countryArray));
List countryList = Arrays.asList(countryArray);
System.out.println("Converted elements: " + countryList);
}
}
输出结果:
Array input: [India, Pakistan, Afganistan, Srilanka]
Converted elements: [India, Pakistan, Afganistan, Srilanka]
2. Collections.addAll()方法:
此方法用于将给定数组转换为List对象。要使用此方法,我们必须导入包 java.util.Collections。 您可以通过输入 **import java.util.*** 来简单地指定所需的Collections方法以实现程序。
步骤1:声明并初始化数组“countryArray”。
步骤2:声明列表对象“countryList”。
步骤3:现在,使用方法Collections.addAll(Collections,Array)。这里,数组中的项目将添加到List中。
import java.util.*;
class GFG {
public static void main(String[] args)
{
String countryArray[]
= { "India", "Pakistan", "Afganistan",
"Srilanka" };
List<String> countryList = new ArrayList<>();
Collections.addAll(countryList, countryArray);
System.out.println("转换后的ArrayList元素为: "
+ countryList);
}
}
输出
转换后的ArrayList元素为: [India, Pakistan, Afganistan, Srilanka]
3.List.of() 方法:
要使用此方法,我们必须导入包 java.util. 这是一个静态方法。List.of() 返回一个不可变列表,但为了使其成为可变列表,我们需要在 ArrayList 的构造函数中指定它。
步骤1:声明并初始化数组“countryArray”。
步骤2:声明列表对象“countryList”。
步骤3:在 ArrayList() 的构造函数内部,指定 List.of(array_name) 方法。它将简单地将元素数组添加到列表中。
示例
import java.util.*;
class GFG {
public static void main(String[] args)
{
String countryArray[]
= { "India", "Pakistan", "Afganistan",
"Srilanka" };
List<String> countryList
= new ArrayList<>(List.of(countryArray));
System.out.println("转换后的ArrayList元素为: "
+ countryList);
}
}
输出
转换后的ArrayList元素为: [India, Pakistan, Afganistan, Srilanka]
4.Arrays.stream() 方法:
要使用此方法,导入包 static java.util.stream.Collectors.toList. 将数组元素指定为 Arrays.stream() 方法,并使用 toList() 方法将其转换为列表。
步骤1:声明并初始化数组“countryArray”。
步骤2:声明列表对象“countryList”。
步骤3:在 Arrays.stream(array_name) 方法中指定数组名称,并使用 collect(toList()) 将其收集并使其成为 List 实例。
示例
import static java.util.stream.Collectors.toList;
import java.util.*;
class GFG {
public static void main(String[] args)
{
String countryArray[]
= { "India", "Pakistan", "Afganistan",
"Srilanka" };
List<String> countryList
= Arrays.stream(countryArray).collect(toList());
System.out.println("转换后的ArrayList元素为: "
+ countryList);
}
}
输出
转换后的ArrayList元素为: [India, Pakistan, Afganistan, Srilanka]