Java 一个字符串数组转换为一个字符串数组
在Java中,我们都知道ArrayList类是由List接口派生的。在这里,我们得到了一个字符串数组,任务是将数组转换为字符串数组。
示例
Input : ArrayList = [ "Geeks", "for", "Geeks" ]
Output: String[] = {"Geeks", "for", "Geeks"}
Input : ArrayList = [ "Jupiter", "Saturn", "Uranus", "Neptune", "Sun"]
Output: String[] = {"Jupiter", "Saturn", "Uranus", "Neptune", "Sun"}
方法
- 使用ArrayList类的get()方法
- 使用ArrayList类的toArray()方法
- 使用数组类的copyOf()方法
方法1:使用ArrayList类的ArrayList.get()方法
语法
str[j] = a1.get(j)
办法
- 获取字符串的ArrayList。
- 使用 size()方法 找到ArrayList的大小,并创建一个这个大小的字符串数组。
- 使用 get()方法 逐一获取ArrayList中的每个元素。
- 使用assignment(=)操作将每个元素分配到字符串数组中。
- 打印字符串数组。
例子
// Java Program to Convert ArrayList to Array
// using toArray() Method
// Importing required classes
import java.util.ArrayList;
import java.util.Arrays;
// Main class
class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an empty ArrayList of string type
ArrayList<String> al = new ArrayList<String>();
// Populating the ArrayList by custom elements
al.add("Anshul Aggarwal");
al.add("Mayank Solanki");
al.add("Abhishek Kelenia");
al.add("Vivek Gupta");
String[] str = new String[al.size()];
for (int i = 0; i < al.size(); i++) {
str[i] = al.get(i);
}
// Printing using for each loop
for (String k : str) {
System.out.println(k);
}
}
}
输出
Anshul Aggarwal
Mayank Solanki
Abhishek Kelenia
Vivek Gupta
方法2:使用ArrayList类的toArray()方法
在这里,我们将创建一个对象数组,通过创建一个字符串数组来存储从ArrayList收到的元素。
语法
Object[] arr = a1.toArray()
String str = (String)obj;
方法
- 获取字符串的ArrayList。
- 使用toArray()方法将ArrayList转换为Object数组。
- 遍历并使用类型转换将每个元素转换为所需的类型。在这里,它被转换为String类型,并添加到字符串数组中。
- 打印字符串数组
例子
// Java Program to Convert ArrayList to Array
// using toArray() Method
// Importing required classes
import java.util.*;
// Main class
class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an empty ArrayList of string type
ArrayList<String> al = new ArrayList<String>();
// Populating the ArrayList by custom elements
al.add("Anshul Aggarwal");
al.add("Mayank Solanki");
al.add("Abhishek Kelenia");
al.add("Vivek Gupta");
// Converting above List to array using toArray()
// method and storing it in an string array
String k[] = al.toArray(new String[al.size()]);
// Iterating over above string array
for (String str : k) {
// Printing the elements in above array
System.out.println(str);
}
}
}
输出
Anshul Aggarwal
Mayank Solanki
Abhishek Kelenia
Vivek Gupta
方法3:使用数组类的copyOf()方法
语法
Object[] gfg = a1.toArray()
String[] str = Arrays.copyOf(gfg, gfg.length, String[].class);
方法
- 获取字符串的ArrayList。
- 使用toArray()方法将ArrayList转换为对象数组。
- 使用Arrays.copyOf()方法将其转换为字符串数组。
- 打印字符串数组。
例子
// Java Program to Convert ArrayList to Array
// using toArray() Method
// Importing required classes
import java.util.*;
// Main class
class GFG {
// Main driver method
public static void main(String[] args)
{
// Creating an empty ArrayList of string type
ArrayList<String> al = new ArrayList<String>();
// Populating the ArrayList by custom elements
al.add("Anshul Aggarwal");
al.add("Mayank Solanki");
al.add("Abhishek Kelenia");
al.add("Vivek Gupta");
String[] answer = Arrays.copyOf(
al.toArray(), al.size(), String[].class);
System.out.println(Arrays.toString(answer));
}
}
输出
[Anshul Aggarwal, Mayank Solanki, Abhishek Kelenia, Vivek Gupta]