Java 中将字符串转换为 ArrayList
-
使用 Java 中的
charAt()
和add()
方法将字符串转换为ArrayList
-
使用 Java 中的
toCharArray()
方法将字符串转换为ArrayList
-
Java 中的
split()
方法 -
使用 Java 中的
split()
方法将字符串转换为ArrayList
-
使用 Java 中的
split()
方法创建一个ArrayList
-
在 Java 中将用户字符串转换为
ArrayList
-
在 Java 中将字符串数组转换为
ArrayList
-
在 Java 中将字符串转换为
ArrayList
本教程介绍了 Java 中 String
到 ArrayList
的转换,并列出了一些示例代码来理解该主题。
一个字符串被定义为一个字符序列,一个 ArrayList
用于存储有序的数据序列。将字符串转换为 ArrayList
需要我们从字符串中取出每个字符并将其添加到 ArrayList
。
在本文中,我们将讨论实现此目的的不同方法。
使用 Java 中的 charAt()
和 add()
方法将字符串转换为 ArrayList
一个简单的解决方案是遍历字符串的每个字符并将该字符添加到 ArrayList
。我们将使用 charAt()
方法来访问字符串的字符,然后我们可以使用 add()
方法将它们添加到 ArrayList
。
这种方法的代码如下所示。
import java.util.ArrayList;
public class SimpleTesting
{
public static void main(String[] args)
{
String s = "sample";
ArrayList<Character> list = new ArrayList<Character>();
for(int i = 0; i < s.length(); i++)
{
char currentCharacter = s.charAt(i);//getting the character at current index
list.add(currentCharacter);//adding the character to the list
}
System.out.println("The String is: " + s);
System.out.print("The ArrayList is: " + list);
}
}
输出:
The String is: sample
The ArrayList is: [s, a, m, p, l, e]
如果我们想做一些更高级的事情,我们就不能使用这种方法。例如,如果我们只想将句子的单词添加到 ArrayList
并忽略标点符号,则需要进一步处理。
使用 Java 中的 toCharArray()
方法将字符串转换为 ArrayList
toCharArray()
方法可用于字符串以将其转换为字符数组。然后我们可以迭代这个字符数组并将每个字符添加到 ArrayList
。
请参考下面的示例。
import java.util.ArrayList;
public class Main
{
public static void main(String[] args)
{
String s = "sample";
ArrayList<Character> list = new ArrayList<Character>();
char[] characterArray = s.toCharArray();
for(char c : characterArray)//iterating through the character array
list.add(c);
System.out.println("The String is: " + s);
System.out.print("The ArrayList is: " + list);
}
}
输出:
The String is: sample
The ArrayList is: [s, a, m, p, l, e]
这是一个简单的方法,如果我们不想做任何复杂的事情,可以使用它。但是,就像上一节中讨论的方法一样,如果我们要在将字符串转换为 ArrayList
之前对字符串进行一些处理(例如删除标点符号),我们就不能使用它。
Java 中的 split()
方法
字符串 split()
方法将正则表达式或模式作为参数,并根据匹配模式将字符串拆分为字符串数组。此方法返回一个字符串数组。
例如,如果我们将字符串 string of words
传递给 split()
方法,并且模式是单个空格(用 //s+ 表示),那么它将返回数组 ["string", "of", "words"]
。
import java.util.Arrays;
public class Main
{
public static void main(String[] args)
{
String s = "string of words";
String[] strArr = s.split("\\s+");//Splitting using whitespace
System.out.println("The String is: " + s);
System.out.print("The String Array after splitting is: " + Arrays.toString(strArr));
}
}
输出:
The String is: string of words
The String Array after splitting is: [string, of, words]
使用 Java 中的 split()
方法将字符串转换为 ArrayList
我们可以使用 Arrays
类的 asList()
方法从返回的字符串数组创建一个 ArrayList
。下面的代码演示了这一点。
import java.util.ArrayList;
import java.util.Arrays;
public class Main
{
public static void main(String[] args)
{
String s = "string of words";
String[] strArr = s.split("\\s+");//Splitting using whitespace
ArrayList<String> list = new ArrayList<String>(Arrays.asList(strArr));
System.out.println("The String is: " + s);
System.out.print("The ArrayList is: " + list);
}
}
输出:
The String is: string of words
The ArrayList is: [string, of, words]
使用 Java 中的 split()
方法创建一个 ArrayList
split()
方法需要根据我们的需要进行更改。例如,如果我们要创建字符串 sample
的单个字符的 ArrayList
,则 split()
方法需要不同的正则表达式。
import java.util.ArrayList;
import java.util.Arrays;
public class Main
{
public static void main(String[] args)
{
String s = "sample";
String[] strArr = s.split(""); //Splitting string into individual characters
ArrayList<String> list = new ArrayList<String>(Arrays.asList(strArr));
System.out.println("The String is: " + s);
System.out.print("The ArrayList is: " + list);
}
}
输出:
The String is: sample
The ArrayList is: [s, a, m, p, l, e]
在 Java 中将用户字符串转换为 ArrayList
假设我们从用户那里获取一个包含以逗号分隔的员工姓名的输入字符串,我们必须创建一个包含每个员工姓名的 ArrayList
。
我们可以使用 split()
方法将字符串拆分为员工姓名数组,然后我们可以简单地将其转换为 ArrayList
。split()
方法非常适合此任务,因为我们需要在创建 ArrayList
之前删除逗号。
请参考下面的示例。
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
String employeeNames;
Scanner scanner = new Scanner(System.in);
System.out.println("Enter employee names separated by comma");
employeeNames = scanner.nextLine();//taking user input
scanner.close();
String[] employeeNamesSplit = employeeNames.split(",");//Splitting names
ArrayList<String> list = new ArrayList<String>(Arrays.asList(employeeNamesSplit));
System.out.println("The String is: " + employeeNames);
System.out.print("The ArrayList is: " + list);
}
}
输出:
Enter employee names separated by comma
Justin, Jack, Jessica, Victor
The String is: Justin, Jack, Jessica, Victor
The ArrayList is: [Justin, Jack, Jessica, Victor]
在 Java 中将字符串数组转换为 ArrayList
数组非常适合以有序的方式存储数据,但其有限的大小会限制一些重要的操作。我们可以使用 asList()
方法简单地将字符串数组转换为 ArrayList
。它将简单地将数组的所有项目复制到列表中。
下面的代码演示了这一点。
import java.util.ArrayList;
import java.util.Arrays;
public class Main
{
public static void main(String[] args)
{
String[] strArr = {"Hello", "Hola", "Ola"};
ArrayList<String> strList = new ArrayList<String>(Arrays.asList(strArr));
System.out.println("The String Array is: " + Arrays.toString(strArr));
System.out.println("The Array List is: " + strList);
}
}
输出:
The String Array is: [Hello, Hola, Ola]
The Array List is: [Hello, Hola, Ola]
在 Java 中将字符串转换为 ArrayList
字符串通常用于许多不同的目的,但它们是不可变的,我们无法对其进行更改。另一方面,ArrayList
提供了更多的灵活性。我们可以从字符串的各个字符创建一个 ArrayList
,或者如果我们需要做一些更复杂的事情(比如从逗号分隔的字符串创建一个名称的 ArrayList
),我们可以使用 split()
方法。
总体而言,split()
方法是将字符串转换为 ArrayList
的最简单也是最受欢迎的方法。
相关文章 - Java String
- 如何从 Java 中的字符串中删除子字符串
- 如何将 Java 字符串转换为字节
- 如何在 Java 中以十六进制字符串转换字节数组
- 如何在 Java 中执行字符串到字符串数组的转换
- 用 Java 生成随机字符串
- Java 中的交换方法
相关文章 - Java ArrayList
- 如何在 Java 中按日期对 ArrayList 中的对象进行排序
- 在 Java 中隐藏设置为 ArrayList
- 在 Java 中使用 ArrayList 进行合并排序
- Java 中比较 ArrayList
- 在 Java 中将 ArrayList 转换为 Int 数组
- 在 Java 中将 ArrayList 转换为 Set