java基础-equals和toString方法

equals

概述

默认方法:比较对象在内存中的地址值是否相同

重写的目的

因为对象比较地址值没有任何意义,一般是判断对象是否同一个对象是通多比较对两个对象成员变量来判断,如果两个对象成员变量值都相同,则认为是同一个对象

toString

概述

默认返回值:类全名@类在内存中的地址值

调用时机

直接调用:直接通过对象名调用toString()
间接调用:打印输出该对象时,系统会自动调用该对象的toString方法

重写的目的

打印一个对象的成员变量

打印一维或多维数组

数组继承了object
数组继承了obe类的 toString方法,数组类型将按照旧的格式打印。例如

int[] luckyNumbers = { 2, 3, 5, 7, 11, 131};
String s = "" + luckyNumbers;
生成字符串“[@la4630”(前缀Ⅱ表明是一个整型数组)。

修正的方式是调用静态方法 Arrays. toString。代码

String s = Arrays.toString(luckyNumbers);
将生成字符串“[2,3,5,7,1,13]”。

要想打印多维数组(即,数组的数组)则需要调用 Arrays. deepToString方法。
toString方法是一种非常有用的调试工具。在标准类库中,许多类都定义了 toString方法,以便用户能够获得一些有关对象状态的必要信息。像下面这样显示调试信息非常有益:

System.out.printIn("Current position =" + position);

更好的解决方法是

Logger.global.info("Current position =" + position);

提示:强烈建议为自定义的每一个类增加 toString方法。这样做不仅自己受益,而且所有使用这个类的程序员也会从这个日志记录支持中受益匪浅。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值