在 Java 中将字符串转换为 ArrayList

在 Java 中可以使用 String 类中的 split() 方法将一个字符串分割成多个子字符串,并将它们存储到一个数组中,接着使用 Arrays 类中的 asList() 方法将数组转换为 ArrayList,即可将字符串转换为 ArrayList。

例如,我们将一个包含多个数字的字符串 “1,2,3,4,5” 转换为 ArrayList:

String str = "1,2,3,4,5";
String[] strArray = str.split(",");
List<String> strList = Arrays.asList(strArray);

上述代码中,首先使用 split() 方法将字符串按照逗号分隔成一个数组,接着使用 asList() 方法将数组转换为 ArrayList。

需要注意的是,asList() 方法返回的 ArrayList 不是 java.util.ArrayList 类型的,而是 java.util.Arrays.ArrayList 类型的,而 java.util.Arrays.ArrayList 类是 Arrays 类的内部类,并不是 java.util.ArrayList 的子类,因此它不支持 add() 和 remove() 操作,否则会抛出 java.lang.UnsupportedOperationException 异常。

如果需要进行 add() 和 remove() 操作,可以将 asList() 转换的 ArrayList 赋值给 java.util.ArrayList 类型的数组,例如:

String str = "1,2,3,4,5";
String[] strArray = str.split(",");
List<String> strList = new ArrayList<>(Arrays.asList(strArray));

上述代码中,我们使用 ArrayList 的有参构造方法将 Arrays.asList() 返回的 ArrayList 转换为 java.util.ArrayList 类型的 ArrayList。

总之,使用 split() 和 asList() 方法可以方便地将一个字符串转换为 ArrayList,在进行 add() 和 remove() 操作时需要注意转换为 java.util.ArrayList 类型的 ArrayList。