关于直接调用Object中的toString方法和使用Arrays中的toString方法的区别

关于直接调用Object中的toString方法和使用Arrays中的toString方法的区别:**

首先他们之间不是继承关系,Object中的toString是没有参数的,这是我在API上查的:

在这里插入图片描述
Arrays中的toString是带参数的,并且是静态的:
在这里插入图片描述
所以这不是重写Object的toString;
Arrays中的toString方法仅仅是一个工具方法,目的是将数组转成字符串;(规则:使用元素拼接起来)
如果想输出一组简明的数据(而不是一串地址)建议重写该方法,自动生成即可,也可以自己编辑。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java的String类有一个equals(Object obj)方法和一个equalsIgnoreCase(String anotherString)方法用于比较字符串对象,但这两种方法比较的是两个字符串对象的内容是否相同,而不是它们在内存的地址是否相同。 在这种情况下,可以使用Java的String.intern()方法和String.valueOf(Object obj)方法。intern()方法将当前字符串的值存储在字符串池,如果该字符串在字符串池不存在,则将其添加到池。在其他地方创建的具有相同值的字符串对象实际上将是指向同一字符串池的对象。 相反,valueOf(Object obj)方法返回一个包含指定对象的字符串表示形式的字符串对象。如果指定对象为null,则返回字符串“ null”。如果指定对象是原始类型,则会调用适当的包装类的toString()方法。如果指定对象是一个字符数组,则通过使用该数组的字符构造一个新的字符串。如果指定对象是其他类型的数组,则调用Arrays.toStringObject \[\])方法返回一个包含每个元素的字符串表示形式的字符串对象。 在一些特殊情况下,例如在字符串匹配使用String.equals()方法可能会更有效,因为它是使用相同的语言结构实现的。在这种情况下,可以使用常量字符串常量池(而不是对象池)来存储相同的字符串,以便在比较字符串时可以使用相同的引用,从而提高了效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值