java toString()返回此
在String toString()
方法中返回this
,当我传递它System.out.println()
它打印String
的内容。 对我来说这是多么令人困惑。 请来解释一下。
public String toString() { return this; }
谢谢。
在Java中的Object
上定义的toString
方法负责将对象转换为String表示。 由于String
已经是String,因此toString
方法只返回自身。
当我传递System.out.println()时,它会打印String的内容
实际上,当您将String
传递给System.out.println
,无论如何都不会通过toString
。 System.out
引用一个PrintStream
对象,该对象有一个立即接受String
的方法:
public void println(String x)
打印一个字符串,然后终止该行。
toString
的契约是返回对象的字符串表示:
public String toString()
返回对象的字符串表示forms。 通常,
toString
方法返回一个“文本表示”此对象的字符串。 结果应该是简洁但信息丰富的表示,便于人们阅读。 建议所有子类都覆盖此方法。
由于String
恰好是一个String
它可以自己返回( this
)!
- 如何使用Gson序列化具有Context作为私有成员的自定义对象?
- 使用Android Paint类中的PorterDuffXfermode更改位图的亮度/变暗强度
- 每次更改选项卡时,选项卡片段都会获取数据
- Android OnLongClickListener未在MapView上触发
- android.view.InflateException扩展类片段时出错
- java.lang.IllegalArgumentException:找不到片段FmMenu的id 0x7f090047(“项目名称”:id / content)的视图
- 如何实现ListFragment和NavigationDrawerFragment
- Java char数组为int
- 从另一个“类接口或enum expected”使用一个包时出错