tostring、(string)和 String.valueOf()
2024-10-20 11:29:14
上周遇到一个问题,只怪自己平时没注意这个细节,从数据库取数据在map集合里,取出该值是我用了.tostring的方法,一次在当取出数据为空时代码报java.lang.NullPointerException空指针异常。而另外一个同时平时习惯行使用(string)强转避免了该错误的发生,下来之后我就针对string的这几种方法做一个新的认识,做到后事不忘前事之师。
.tostrinng():
一般的对象或者参数都是有toString()的方法的,只是要注意在一个参数定义为int类型是就没有这个方法了。还有就是当参数为空的时候.toString()方法就会报出空指针异常,这是这个方法的不好的地方使用时需要仔细斟酌一下。例如:
(string):强转形式,简单方便,效率高。不好的就是,他只能是强转原本就是字符串的东西,如果原本不是字符串的话,那么就会报错。
String.valueOf():这个方法是静态的,直接通过String调用,可以说是完美。他内部的实现机制:
public static String valueOf(Object obj){
return (obj==null) ? "null" : obj.toString();
};
在内部就是做了为空的判断的,所以就不会报出空指针异常。
这三者的使用,个人觉得应该使用String.valueOf()的方式。这样的使用安全可靠。
最新文章
- 解决svn pritine text not exist问题
- Android 中的 Service 全面总结(转载)
- cadence学习之——原理图库的添加及器件的放置
- C#与数据库访问技术总结(五)之Command对象的常用方法
- 360 webscan中防注入跨站攻击的核心
- Windows 8操作技巧之快捷键大全
- Codeforces Round #311 (Div. 2)B. Pasha and Tea 水题
- UVa 11054 Wine trading in Gergovia
- leetcode 解题 String to Integer (atoi)(C&;python)
- SQL Server 备份维护计划
- iOS 简易环形进度条
- JTAG基础知识
- CentOS安装、使用VNC
- boost中打印python中的变量
- BZOJ1565[NOI2009]植物大战僵尸——最大权闭合子图+拓扑排序
- markdown的css样式(自己写的)
- npm run dev 报错:missing script:dev
- VSCode一直弹框错误Linter pylint is not installed
- Video Processing and Communications:(视频处理和通信)
- OSGI企业应用开发(二)Eclipse中搭建Felix运行环境
热门文章
- 通过使用nginx来实现logstash的负载均衡
- Spring Boot 项目转容器化 K8S 部署实用经验分享
- Jpa常用API
- 云数据库技术|“重磅升级”后再测 TDSQL-C
- 实验02_Proteus仿真数码管显示报告
- GitLab私有化部署 - CI/CD - 持续集成/交付/部署 - 源代码托管 &; 自动化部署
- C++ 右值引用与一级指针
- windows C++ 异常调用栈简析
- Sqoop 之 安装
- Java 求解自幂数(水仙花数)