toString和String.valueOf的比较

本文详细解析了Java中Object类的toString方法与String类的valueOf方法。对比了两种方法在处理不同类型的输入时的行为差异,特别是对于null值的处理方式。此外,还介绍了System.out.println方法如何使用这些转换方法来打印输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这两个方法的源码

Object中toString方法:
在这里插入图片描述
String中valueOf方法:
在这里插入图片描述
当传入参数为byte,short,int,long,float,double,boolean,char(8种基本数据类型)时可以调用String.valueOf()方法转化为String。
传入参数为byte,short时会自动转成int。
在这里插入图片描述
针对传入参数为Object类型,比较如下:

1.相同点
  • Object中有public方法toString,因此任何一个对象都能调用toSring
  • valueOf的参数是Object,可以传入任何一个对象
  • 两者返回类型都是String,均能够将一个对象转化为String
2.区别
  • 当对象为null时,调用toString会报java.lang.NullPointerException
  • 当对象为null时,调用String.valueOf()会返回"null"字符串
3.System.out.println()

System.out.println方法源码:
在这里插入图片描述System.out.println内部调用了String.valueOf,String.valueOf内部调用了toString

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值