Java中数组如何转为字符串的几种方法
作者:Gsx_123
数组是java中一个重要的类型,小伙伴们知道如何将数组转为字符串吗,这篇文章主要给大家介绍了关于Java中数组如何转为字符串的几种方法,需要的朋友可以参考下
数组转为字符串的方法:
1、使用Arrays工具类 Arrays.toString()
int[] array = {1, 2, 3, 4, 5};
String s = Arrays.toString(array);
System.out.println(s);// [1, 2, 3, 4, 5] 得到的不是想要的结果,可以用字符串的截取来获得想要的结果
s = s.substring(1, s.lastIndexOf("]"));
System.out.println(s);// 1, 2, 3, 4, 5
2、使用StringBuilder,创建一个对象,用append()将数组中的元素追加到对象中
StringBuilder sb = new StringBuilder();
// 2-1、遍历数组
for (int i = 0; i < array.length; i++) {
// 2-2、将元素追加到对象中
sb.append(array[i]);
// 2-3、将中间的连接符加入 得到 1--2--3--4--5
if (i != array.length - 1) {
sb.append("--");
}
}
System.out.println(sb);// 1--2--3--4--5
3、使用 Stream 流
转变成流的两种方式:
1、Arrays.stream() 使用该方式时,如果数组为基本类型需要用boxed()进行封装,如果数组为封装类型就不需要使用boxed()
2、Stream.of() 使用该方式数组需要为封装类型 例如:Integer
s = Arrays.stream(array)// 将数组转为流
.boxed()// 将int类型封装成Integer
.map(item -> String.valueOf(item))// 将Integer转为字符串
.collect(Collectors.joining(","));// 拼接,用‘,'相隔
System.out.println(s);// 得到结果 1,2,3,4,5
Integer[] array1 = {1, 2, 3, 4, 5};
String s1 = Stream.of(array1)
.map(item -> String.valueOf(item))
.collect(Collectors.joining("-"));
System.out.println(s1);// 得到结果 1-2-3-4-5附:字符串转字符数组
先看字符串类型转换成char数组,代码如下
代码如下:
String myString = "hello123"; //创建一个字符串变量myString
char[] myCharArray; //创建一个字符数组myCharArray
myCharArray = myString.toCharArray(); //将字符串变量转换为字符数组
for(int i=0; i<myCharArray.length; i++) {
System.out.print(myCharArray[i] + " "); //将每个字符打印出来
}结果:
h e l l o 1 2 3
显然,在转换的过程中用到了字符串的方法toCharArray(),将字符串“hello123”转换成了字符数组。
总结
到此这篇关于Java中数组如何转为字符串的几种方法的文章就介绍到这了,更多相关Java数组转字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
