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方法
  • 相关阅读:
    Hive的安装和使用
    Redis 慢查询日志
    GO语言-数组
    ZooKeeper-3.3.4集群安装配置
    GO语言-基础语法:循环
    GO语言-基础语法:条件判断
    GO语言-基础语法:变量定义
    nginx限制下载速度
    Centos7下Etcd集群搭建
    浅谈spj
  • 原文地址:https://www.cnblogs.com/JohnTeslaaa/p/10632111.html
Copyright © 2011-2022 走看看