toString 和 toStringBuilder的区别
分析一段代码的时候,发现重写了toString方法,而重写之后return的是对一个名为toStringBuilder方法的操作,于是到网上查了一次,大侠们的回答很详实。
也就是说StringBuilder可以自由改变字符串,而String不行。
其实toString和toStringBuilder很相似,只是在返回值上面有区别。前者返回值是String类型,而后者返回值是StringBuilder类型,在被重写后,可以灵活的改变返回值的长度。
通过toString的重写,可以实现返回单个的字符串。而如果需要返回的是多个的,或者带有重复的特殊的字符,就不方便了。于是就会用到toStringBuilder方法,(如Person@14576877[name=pengzhoushuo,age=25,sex=true]中的@,[,],=)
当然前者也可以实现,只是麻烦些,而且容易出错,效率低。
@override
public String toString() {
return super.toString() + ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}
有动态代理的地方一定慎用ToStringBuilder.reflectionToString方法
分享到:
相关推荐
收集整理了一些toString的实现方式,相信其中一定有你喜欢的,还等什么赶紧下载吧,评论后积分返回
Java组件开发(1)ToStringBuilder
Java 对象的toString和equals方法重写 在 Java 中,每个对象都继承自 Object 类,而 Object 类中定义了两个重要的方法:toString() 和 equals()。这两个方法都是非常重要的,它们分别用于对象的字符串表示和对象...
本文实例分析了C#中Convert.ToString和ToString的区别,对于初学者来说是很有必要加以熟练掌握的。具体分析如下: 1.Convert.ToString能处理字符串为null的情况。 测试代码如下: static void Main(string[] args) ...
浅谈ToString()和Convert.ToString()方法的区别 一、一般用法说明 ToString()是Object的扩展方法,所以都有ToString()方法;而Convert.ToString(param)(其中param参数的数据类型可以是各种基本数据类型,也可以是...
toString() 方法的默认实现是返回一个字符串,该字符串由类名、at 标记符“@”和对象的哈希码的无符号十六进制表示组成。例如,Object 对象的 toString() 方法将返回一个字符串,如“classname@hashCode”,其中 ...
C# ToString格式大全 格式类型有货币、十进制数、科学型、固定点、常规、数字和十六进制
在 js 中,toString 方法有三个主要作用:返回一个表示对象的字符串、检测对象的类型和返回该数字对应进制的字符串。 返回一个表示对象的字符串 toString 方法的第一个作用是将对象转换为字符串形式。例如,我们...
C#中,string 是 System.String 的别名,所以基本上在使用时是没有差别的。
Java中的tostring和遍历
我们知道String()与 .toString()都是可以转换为字符串类型,但是String()与 .toString()的还是有区别的 1、.toString()可以将所有的的数据都转换为字符串,但是要排除null 和 undefined 例如将false转为字符串类型 ...
C#中ToString格式大全 C#中ToString格式大全
每个项目我都必用的工具类,使用非常简单,放到项目目录中,java对象继承这个ToString类就可以,用在代码日志里特别方便,还支持过滤特定字段,满足日志保密性要求
c#中ToString()的一些常用用法
C#中ToString格式大全
map.toString()后转换成Map类型
ToString()格式设置大全ToString()格式设置大全ToString()格式设置大全ToString()格式设置大全