zoukankan      html  css  js  c++  java
  • char[]的toString() 和 String.valueOf(char[])的区别

    之前看到其他博客里说,toString 和 String.valueOf()功能相同,但是我发现对于char[]来说并不是这样的:

    示例1:

    先比较一下:

    public static void main(String[] args) {
            char[] chars={'1','0','0'};
            System.out.println(chars.toString());//[C@677327b6
            System.out.println(String.valueOf(chars));//100
        }

    可以看到,char[]的toString()方法输出的是地址;

    String.valueOf(char[])输出的是字符数组的数值。

    看源码:

     public String toString() {
            return getClass().getName() + "@" + Integer.toHexString(hashCode());
        }

    toString方法的输出格式是有一个@的地址值
    public static String valueOf(char data[]) {
            return new String(data);
        }
    char[]的valueOf方法输出的是字符数组里面的数值。

    示例2:

         Integer a=1;
            System.out.println(a.toString());//1
            System.out.println(String.valueOf(a));//1

    对于Integer类型来说:

    public String toString() {
    return toString(value);
    }
    public static String valueOf(int i) {
            return Integer.toString(i);
        }
    调用了toString方法
  • 相关阅读:
    链表详解自带代码
    队列
    单词翻转
    表达式求值
    一元多项式
    循环链表
    学生成绩管理系统
    双向循环链表
    双向链表
    静态链表
  • 原文地址:https://www.cnblogs.com/JohnTeslaaa/p/10632111.html
Copyright © 2011-2022 走看看