软件编程
位置:首页>> 软件编程>> java编程>> 如何把char数组转换成String

如何把char数组转换成String

作者:等待救赎的波  发布时间:2023-11-11 07:38:15 

标签:char数组,转换,String

把char数组转换成String

调用reverseStr()传入一个字符串"let’s"

  public String reverseStr(String s) {
        int left = 0, right = s.length() - 1;
        char[] chs = s.toCharArray();
        System.out.println(chs);
        while (left < right) {
            char temp = chs[right];
            chs[right] = chs[left];
            chs[left] = temp;
            left++;
            right--;
        }
        return chs.toString();
    }

输出结果

[C@135fbaa4

分析原因

  • Java中,toString方法,会打印出&ldquo;类名@他的hashCode值&rdquo;这样的一个字符串。

  • 而我想要的是把char数组转换成String

  • 应该使用String.valueOf()方法

再次测试

s'tel

String.valueOf(char[] data) : 将 char 数组 data 转换成字符串

将传入的数组转为String型,存入数据库。去掉空格和括号[]

将传入的数组转为String,存入数据库。去掉空格和括号的标准写法:

//无空格,无括号
String s3 = StringUtils.join(arr,",");
System.err.println(s3);//41,a,5,g56

其他写法:

public static void main(String[] args) {
//有空格和括号
String [] arr = {“41”,“a”,“5”,“g56”};
String s1 = Arrays.toString(arr);
System.err.println(s1);//[41, a, 5, g56]
//无空格,无括号,无逗号
String s2 = StringUtils.join(arr);
System.err.println(s2);//41a5g56

//无空格,无括号,无逗号
StringBuffer s4 = new StringBuffer();
for (String string : arr) {
s4.append(string);
}
System.err.println(s4.toString());//41a5g56
}

另:java分割包含有多个空格的字符串

String s = "Rita  Love     code"

正确写法

String [] arr = str.split("\\s+");
for(String ss : arr){
    System.out.println(ss);
}
/*
Rita
Love
Code
*/

错误写法

String[] arr2 = str.split(" ");
for (String ss : arr2) {
    System.out.println(ss);
}
/*
Rita

Love

code
*/

来源:https://blog.csdn.net/qq_46110710/article/details/124302761

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com