String类的valueof()方法引发的问题

本文详细解析Java中的String.valueOf()方法,包括其内部实现原理、注意事项以及如何避免常见陷阱。同时,通过实例展示了如何在获取Object类型属性时,通过instanceof判断类型后再调用该方法,确保程序的健壮性和稳定性。

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

一、jdk的API给出String valueof(object obj)的解释:

public static String valueOf(Object obj) {
	return (obj == null) ? "null" : obj.toString();
    }

 查看其他基本类型的所有类型转换方法,发现只有String有一个valueof(Object obj)方法,此方法特别之处就是可以处理Object类型参数,且不用担心null的情况。但是随后带来的问题是当此方法返回的是字符串"null",有时判断的时候就会出现意料之外的事。注意...

二、使用形如 (String)11  的强制类型转换前题是 被转换对象 是可以转成 转换对象 的。用session.getAttribute()获取的值(类型为Object)使用此方法行不通。

使用此方法时可以用 instanceof 判断一下类型

boolean b=request.getAttribute("user") instanceof Object ;
System.out.println(b);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值