迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

Java 中将字符串转换为 ArrayList

作者:迹忆客 最近更新:2023/03/26 浏览次数:

本篇文章介绍了 Java 中 StringArrayList 的转换,并列出了一些示例代码来理解该主题。

一个字符串被定义为一个字符序列,一个 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() 方法将字符串拆分为员工姓名数组,然后我们可以简单地将其转换为 ArrayListsplit() 方法非常适合此任务,因为我们需要在创建 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 的最简单也是最受欢迎的方法。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

MySQL 中将 Blob 数据转换为文本格式

发布时间:2023/05/09 浏览次数:72 分类:MySQL

本文将重点介绍 MySQL 数据库中的 BLOB 数据类型。 我们将深入了解 BLOB 数据类型并讨论其各种类型。在本文的后面,我们将回顾将数据从 blob 字段转换为非二进制格式的不同方法。

MySQL 中将字符串附加到现有字段

发布时间:2023/05/08 浏览次数:63 分类:MySQL

本文我们将学习使用 CONCAT() 和 CONCAT_WS() 函数在 MySQL 字段中连接或附加字符串值。使用 CONCAT() 和 CONCAT_WS() 将字符串附加到 MySQL 中的现有字段

在 MySQL 中将行转换为列

发布时间:2023/05/08 浏览次数:116 分类:MySQL

本篇文章介绍如何在 MySQL 中将行转换或更改为列。在 MySQL 中创建数据集 经常需要获取与显示为列的必要行数据相关的适当信息。

MySQL 将字符串拆分成行

发布时间:2023/05/08 浏览次数:68 分类:MySQL

在本文中,我们将讨论什么是将字符串拆分为行以及如何创建一个自执行函数。 我们主要讨论 SUBSTRING_INDEX() 方法以及一些示例以轻松理解该概念。

在 C 语言中获取字符数组的长度

发布时间:2023/05/07 浏览次数:166 分类:C语言

本文演示了如何在 C 语言中获取一个 char 数组的长度。使用 sizeof 运算符来查找字符数组的长度 数组的大小可以用 sizeof 运算符计算,而不考虑元素的数据类型。

在 C 中创建格式化字符串

发布时间:2023/05/06 浏览次数:68 分类:C语言

这是一篇关于在 C 编程语言中格式化字符串的紧凑文章。本文讨论如何使用 C 语言格式化字符串,就像我们在 printf() 函数中所做的那样。

在 Bash 中将 Stderr 和 Stdout 重定向到一个文件

发布时间:2023/05/04 浏览次数:130 分类:操作系统

本文介绍了如何在 Bash 中重定向 stderr 和 stdout。让我们开始了解 Linux 中的标准输出和标准错误这两个术语。Linux 中的标准输出和标准错误 在 Linux 中,命令从用户那里获取一些输入,可以是文件

在 Java 中获取文件大小

发布时间:2023/05/01 浏览次数:139 分类:Java

Java 提供了不同的方法来获取文件的字节大小。 本教程演示了在 Java 中获取文件大小的不同方法。使用 Java IO 的文件类获取文件大小 Java IO 包的 File 类提供了以字节为单位获取文件大小的功能。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便