本文是关于如何在Java中以不同方式将String转换为String Array的几种方法,按照惯例,文末会分享Groovy语言中的实现,我来为大家科普一下关于java字符串数组转为整型数组?以下内容希望对你有帮助!

java字符串数组转为整型数组(Java字符串到数组的转换)

java字符串数组转为整型数组

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

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.7 INFO-> 第1个:F INFO-> 第2个:u INFO-> 第3个:n INFO-> 第4个:T INFO-> 第5个:e INFO-> 第6个:s INFO-> 第7个:t INFO-> 第5个:e INFO-> 第9个:r Process 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); 复制代码

控制台输出:

9 9 复制代码

正则表达式

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

再次需要使用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.7 INFO-> 第1个:F INFO-> 第2个:u INFO-> 第3个:n INFO-> 第4个:T INFO-> 第5个:e INFO-> 第6个:s INFO-> 第7个:t INFO-> 第5个:e INFO-> 第9个:r INFO-> 9 INFO-> 9 Process finished with exit code 0 复制代码

Guava

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

这是完整的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()) 复制代码

作者:FunTester链接:https://juejin.im/post/6891086988171018247来源:掘金著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

,