java string 转 object_java 类型转换 Object和String互转

java string 转 object_java 类型转换 Object和String互转Long,Float等Object转为String方法1.toString()使用范围:任何继承Object的类都具有这个方法但是,使用toString()的对象不能为null,否则会抛出异常java.lang.NullPointerException/**返回:该对象的字符串表示*/Integerx=newInteger(100);if(x!=null)System.out.printl…

大家好,又见面了,我是你们的朋友全栈君。

Long,Float等Object转为String

方法1.toString()

使用范围:任何继承Object的类都具有这个方法

但是,使用toString()的对象不能为null,否则会抛出异常java.lang.NullPointerException

/**返回:该对象的字符串表示*/

Integer x = new Integer(100);

if(x!=null)

System.out.println(x.toString());

方法2.String.valueOf()

String.valueOf()解决了toString()使用对象不能为空的问题,实际上,该方法在底层还是使用了toString(),源码如下

public static String valueOf(Object obj) {

return (obj == null) ? “null” : obj.toString();

}

特别注意:当对象对null,转为的String类对象是字符串“null”

/**这样的代码肯定就回有问题,因为永远不会得到执行。*/

if(String.valueOf(o) == null){…}

应该是

if(String.valueOf(o) == “null”){…}

方法3:采用类型转换(String)object方法

(String)区别于上面两种方法,因为它是强制转换。

使用这种方法,最好先通过instanceof()判断被转换的类型能不能强制转为String类型。

boolean result = object instanceof class 判断其左边对象是否为其右边类的实例或者可以转化为右边类,返回boolean类型的数据

使用这种方法时,需要注意的是类型必须能转成String类型。柔则会抛出CalssCastException异常

null值可以强制转换为任何java类类型,(String)null也是合法的。

Object是可以通过强制转换成为String的

Integer不能通过强制转换成String。

总结:

使用Object.toString()方法 的对象不能为null

使用String.valueOf(),注意返回值:如果其他对象为null,返回字符串“null”而不是null对象

String 转 Long,Float,Double等类型

以String转Long为例

/**第一步:获取String类变量*/

String strAreaId= “12”;

/**第二步:判断果String类变量非空非null*/

if (strAreaId!= null && !””.equals(strAreaId)) {

/**第三步:把String类变量转为Long型*/

Long areaId = new Long(strAreaId);

Long areaId2 = Long.valueOf(strAreaId);

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137729.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 学习PrintWriter类[通俗易懂]

    学习PrintWriter类[通俗易懂]java.io包1)首先先知道它的八种构造方法,但怎么记住这八种呢?我们都知道PrintWriter是一种过滤流,也叫处理流。也就是能对字节流和字符流进行处理,所以它会有:PrintWriter(OutputStreamout) 根据现有的OutputStream创建不带自动行刷新的新PrintWriter。PrintWriter(Writerout) 创建不带自动行刷新

    2022年8月10日
    10
  • 什么是Linux内核版本_linux内核深度解析

    什么是Linux内核版本_linux内核深度解析Linux内核版本有两种:稳定版和开发版,Linux内核版本号由3个数字组成:r.x.yr:目前发布的内核主版本。x:偶数表示稳定版本;奇数表示开发中版本。y:错误修补的次数。内核版本号每位都代表什么?以版本号为例:2.6.9-5.ELsmp,r:2,主版本号x:6,次版本号,表示稳定版本y:9,修订版本号,表示修改的次数头两个数字合在一齐可以描述内核系列。如…

    2022年8月23日
    6
  • awstats安装流程「建议收藏」

    awstats安装流程「建议收藏」我是直接从网站上下的rpm,然后rpm-ivh的然后直接安装到/usr/local/awstatsapache日志格式要使用combined:CustomLog"/var/log/httpd/access_log"combined我是用的logrotate每天断日志,然后将以前的日志打包成gz存放,于是昨天的日志就是access_log.1.gz添加主机(可以…

    2022年7月16日
    20
  • 精准绝杀一波(皮筋穿透魔术教学)

    自从去年8月份币安推出BNB之后,各家交易所也纷纷向交易者售卖自家生产的平台币,并允诺出让部分红利给到买家。而其中,Fcoin以其创新的“交易挖矿”机制,圈得韭菜无数。领跑数字货币市场的平台币进入2017年熊市以来,数字货币市场上的领跑者无疑是各大交易所推出的平台币。自从去年8月份币安推出BNB之后,各家交易所也纷纷向交易者售卖自家生产的平台币,并允诺出让部分红利给到买家。常见的平台币让利策略可以…

    2022年4月17日
    380
  • Git拉取代码报密码错误「建议收藏」

    Git拉取代码报密码错误「建议收藏」刚刚Git拉取代码,显示密码错误。我就奇怪了,密码输入了好几次,还是错误。但是马上得提交了,又很着急 ,将最简单的处理 方法忘记了。冷静下来,细细分析。刚学习时好像遇到过此类问题,于是直接删除凭证,再次拉取,正常。真的越着急越乱,遇到问题还是要冷静分析。…

    2022年6月13日
    37
  • android调用js方法

    android调用js方法

    2021年9月30日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号