欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

字符串转数组JAVA(java字符串转数组的方法)

数码知识

周全优秀作者

原创内容 来源:小居数码网 时间:2024-08-12 15:36:01 阅读() 收藏:40 分享:63

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有1094个文字,大小约为4KB,预计阅读时间3分钟。

本文是关于如何在Java中以不同方式将String转换为String Array的几种方法,按照惯例,文末会分享Groovy语言中的实现。

java字符串转数组的方法

split()方法

字符串api是通过split()方法添加的,该方法使用分隔符作为输入,并且字符串将根据给定的分隔符进行拆分。最后,它以String []数组的形式返回每个拆分字符串。

在上一篇文章中,我们深入了解了如何使用带有不同定界符的split()方法拆分字符串。

查看下面的程序,并将空字符串“”传递给split()方法。

public class FunTester {     public static void main(String[] args) {        String input = "FunTester";        String[] split = input.split("");        output(Arrays.asList(split));    } }复制代码

控制台输出:

INFO-> 当前用户:fv,IP:10.60.192.21,工作目录:/Users/fv/Documents/workspace/fun/,系统编码格式:UTF-8,系统Mac OS X版本:10.15.7INFO-> 第1个:FINFO-> 第2个:uINFO-> 第3个:nINFO-> 第4个:TINFO-> 第5个:eINFO-> 第6个:sINFO-> 第7个:tINFO-> 第5个:eINFO-> 第9个:rProcess finished with exit code 0复制代码

input.split("");方法将字符串"FunTester"分割成到string[]数组,并将结果存储在split中。后面是输出list对象的方法。内容如下:

    public static void output(List list) {        list.forEach(x -> output("第" + (list.indexOf(x) + 1) + "个:" + x.toString()));    }复制代码

现在,转换后的字符串数组长度和原始字符串长度应该相同。检查代码:

        output(input.length());        output(split.length);复制代码

控制台输出:

99复制代码

正则表达式

接下来,看看使用正则表达式的第二种方法,在很多时候,正则表达式可以简化我们对字符串的验证,例如:邮箱、手机号等等。

再次需要使用split()方法和正则表达式,如下所示。

public class FunTester {     public static void main(String[] args) {         String input = "FunTester";        String[] split = input.split("(?!^)");        output(Arrays.asList(split));        output(input.length());        output(split.length);             } }复制代码

控制台输出:

INFO-> 当前用户:fv,IP:10.60.192.21,工作目录:/Users/fv/Documents/workspace/fun/,系统编码格式:UTF-8,系统Mac OS X版本:10.15.7INFO-> 第1个:FINFO-> 第2个:uINFO-> 第3个:nINFO-> 第4个:TINFO-> 第5个:eINFO-> 第6个:sINFO-> 第7个:tINFO-> 第5个:eINFO-> 第9个:rINFO-> 9INFO-> 9Process finished with exit code 0复制代码
  • 这里说明一下,split()方法源码中参数定义如下:String regex,再翻一下重载的方法 public String[] split(String regex, int limit)中的源码中做了很多判断之后才会使用正则,不要被参数名regex欺骗了。
  • Guava

    Guava API还内置了对字符串数组转换的支持。当使用Guava时,这里涉及许多步骤。

  • 首先使用toCharArray()方法将字符串转换为char[]数组。
  • Chars.asList()方法将char数组转换为List。
  • 最后使用List.transform()和toArray()方法转换为String数组。
  • 的确是非常麻烦的。
  • 这是完整的Demo。

    public class FunTester {     public static void main(String[] args) {         String input = "FunTester";        String[] slist = Lists.transform(Chars.asList(input.toCharArray()), Functions.toStringFunction()).toArray(ArrayUtils.EMPTY_STRING_ARRAY);        output(Arrays.asList(slist));        output(input.length());        output(slist.length);    } }复制代码

    控制台输出:

    与上面相同,不再重复。复制代码

    Groovy

    下面有请Groovy出场,代码比较简单,我保留了Java版本的第一行代码。

            String input = "FunTester";        def list = input as List        output(list)        output(list.size())        output(input.length())复制代码
  • 只用了一个as关键字就可以了,这里的as操作符是可以被重写的。在之前的文章Groovy重载操作符(终极版)已经讲过了。
  • 上面就是小居数码小编今天给大家介绍的关于(java字符串转数组的方法)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

    94%的朋友还想知道的:

    (367)个朋友认为回复得到帮助。

    部分文章信息来源于以及网友投稿,转载请说明出处。

    本文标题:字符串转数组JAVA(java字符串转数组的方法):http://sjzlt.cn/shuma/154960.html

    猜你喜欢