Java中的toString()方法

Java中的toString()方法

目录

1.????对象的toString方法

2.????基本类型的toString方法

3.????数组的toString方法

4.????参考文献

?

?

  1. 对象的toString方法

    在JDK API中对Object对象的toString方法说明如下:

    toString :

    public String toString()

    返回该对象的字符串表示。通常,toString 方法会返回一个"以文本方式表示"此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。

    Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符"@"和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:

    getClass().getName() + ‘@‘ + Integer.toHexString(hashCode())

    返回:

    该对象的字符串表示形式。

    ?

    结论:

    ????如果对象中重写了toString方法,就调用对象自己的toString方法,否则调用Object的toString方法。

    ?

  2. 基本类型的toString方法

    基本类型的toString方法调用的是java.io.PrintStream的println(int)方法,关键代码如下:

    write(String.valueOf(i));

    ?

    可以通过JDK自带的工具javap反编译代码来查看。

    找到生成的.class文件所在目录,执行命令:

    javap –c 类名

    ?

  3. 数组的toString方法

    对于数组:

    代码:

    int[] arr = new int[] { 1, 2, 3 };

    System.out.println(arr);

    输出内容:

    [[email protected]

    ?

    结论:

    数组也是对象的一种,数组对象不是从某个类实例化来的,而是由JVM直接创建的,
    这里调用的是java.lang.Object的toString方法。

    ?

    ?

    ?

  4. 参考文献

    JDK API

    JAVA中的数组是对象吗?

时间: 2024-12-21 05:19:26

Java中的toString()方法的相关文章

源码浅谈(一):java中的 toString()方法

前言: toString()方法 相信大家都用到过,一般用于以字符串的形式返回对象的相关数据. 最近项目中需要对一个ArrayList<ArrayList<Integer>> datas  形式的集合处理. 处理要求把集合数据转换成字符串形式,格式为 :子集合1数据+"#"+子集合2数据+"#"+....+子集合n数据. 举例: 集合数据 :[[1,2,3],[2,3,5]]  要求转成为 "[1,2,3]#[2,3,5]"

Java中的 toString 方法

1. Object 类中定义有 public String toString() 方法,其返回值是 String 类型,描述当前对象的有关信息: 2. 在进行 String 与其它类型数据的连接操作时(如:System.out.println("info"+person)),将自动调用该对象类的 toString() 方法: 3. 可以根据需要在用户自定义类型中重写 toString() 方法,如: class Dog { public String toString() { retu

java中的toString

对于toString方法,存在于API中的java.lang.String类中,API中告诉的该方法返回的是对象本身(该对象已经是一个字符串了).在默认情况下,该方法返回的是类名的原路径[email protected]+对象的哈希值无符号十六进制表示形式.而对于String,该类已经重写了toString方法,所以不需要我们再继续重写该方法直接调用就能够正确返回正确的字符串.而在大多数情况下,我们希望在我们自己的类中重写toString方法来返回我们想得到的对象信息.下面举一个简单的例子: 1

java对象重写toString方法

java Object的toString方法定义是 [email protected],然而对于对象,很多时候这玩意并没有什么卵用,现在比较常用的需求是将对象转为json字符串,只需在对象中做如下修改即可: import com.alibaba.fastjson.JSON; @Override public String toString() { return JSON.toJSONString(this); }

浅谈Java中的hashCode方法

哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: public native int hashCode(); 根据这个方法的声明可知,该方法返回一个int类型的数值,并且是本地方法,因此在Object类中并没有给出具体的实现. 为何Object类需要这样一个方法?它有什么作用呢?今天我们就来具体探讨一下hashCode方法. 一.hashCode方法的作用 对于包含容器类型的程序设计语言来说,基本上都会涉及到has

Java中的main()方法详解

在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等. 在看Java中的main()方法之前,先看一个最简单的Java应用程序HelloWorld,我将通过这个例子说明Java类中main()方法的奥秘,程序的代码如下: 1 /** 2 * Java中的main()方法

javascript中的toString()方法

javascript中的toString()方法,主要用于Array.Boolean.Date.Error.Function.Number等对象.下面是这些方法的一些解析和简单应用,做个纪律,以作备忘. (1)Array.toString():将数组转换成一个字符串,并且返回这个字符串.描述:当数组用于字符串环境中时,javascript会调用这一方法将数组自动转换成一个字符串.toString()在把数组转换成字符串时,首先要将数组的每个元素都转换成字符串(通过调用这些元素的toString方

java中构造方法和方法全面解析

java中构造方法和方法全面解析 我相信大多说人都对构造方法.方法不陌生,而且很了解,但我也相信有很多像我这样的没有一个很好很清晰很全面的认识,今天就把它整理如下,希望能给大家带来点方便与帮助,也希望大家多多讨论.          构造方法和方法的区别: 构造方法要与类名相同,无返回类型,在类初始化的时候调用.      方法最好与类名不同,对象调用,静态方法可用类名.方法(). 构造器和方法在下面三个方面区别:修饰符,返回值,命名. 1.和方法一样,构造器可以有任何访问的修饰: public

JAVA中的finalize()方法

[转]JAVA中的finalize()方法 今天早上看Thinking in java的[第四章 初始化和清除].[  清除:终结和垃圾回收]的时候, 看到了这个东西. 用于清理滴... 当然,这个方法来自java.lang.Object finalize()方法的重写 权限(Access)需要是protected或者是public ,不能是private finalize()方法不需要显示地调用, 在垃圾回收(GC)时会被自动先行调用的. 据我测试,需要显示地调用垃圾回收方法(System.g