Java之toString()方法详解

Java之toString()方法详解

Java中 toString()方法在Object类中和Intent类中都有定义,作用类似,但显示形式有点区别

一、Object类中toString()方法

	toString() 是java.lang.Object类的方法
	定义:public String toString()

源代码:

 public String toString() {

        return getClass().getName() + "@" + Integer.toHexString(hashCode());

    }

 

public String toString ()
添加于  API 级别 1

Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:

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

See Writing a useful toString method if you intend implementing your own toString method.

返回值
  • a printable representation of this object.

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

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

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

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

  说明:

输出对象时一般会自动调用toString( )方法把对象转换为字符串。例如System.out.println(obj),括号里面的 “obj”如果不是String类型的话,而是对象时,就自动调用obj.toString()方法。当然也可以重载toString( )方法,指定返回的形式。

public class Text01
{
       public static class A
       {
              public String toString()
              {
                     return "this is A";//指定返回的形式
              }
       }
       public static void main(String[] args)
       {
              A obj = new A();
              System.out.println(obj);//等同于 System.out.println(obj.toString( ));
 
       }
}

输出:this is A

如果把 toString()注释掉,那么得到:Demo@ed5ba6,其中getClass().getName()返回值为Demo@后面对应的是此对象哈希码的无符号十六进制表示形式。

二、Intent类中toString()方法

    public String toString() {
        StringBuilder b = new StringBuilder(128);

        b.append("Intent { ");
        toShortString(b, true, true, true, false);
        b.append(" }");

        return b.toString();//调用Object类中toString方法,实质上,我们可以<span style="font-family:宋体;">通过</span><span style="color: rgb(51, 153, 102);">子类都重写此方法,根据自己的需要指定返回形式</span>    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI吃大瓜

尊重原创,感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值