java 实现将Object类型转换为int类型

作者:大哥哥招牌coding 时间:2023-11-11 07:58:03 

如何将Object类型转换为int类型


Object object = null;
try
{
   Integer.parseInt(object.toString());
}
catch (NumberFormatException e)
{}

也可以先判定一下是否是Integer


//可以先判定一下是否是Integer
Object object = "111";
if (object instanceof Integer) {
  Integer.parseInt(object.toString());
}

String转化Integer碰见的坑

项目开发中使用Interger将字符串转为Integer类型,并进行相应的比较,开始数据较小,并未发现问题,如15


String a = "15";
System.out.println(Integer.valueOf(a) == Integer.valueOf("15"));

返回的结果为true,但是给我423


String a = "423";
System.out.println(Integer.valueOf(a) == Integer.valueOf("423"));

返回的结果为false,立马查看Integer的源码,发现了如下代码


public static Integer valueOf(int i) {    
     final int offset = 128;    
     if (i >= -128 && i <= 127) { // must cache      
       return IntegerCache.cache[i + offset];    
    }    
    return new Integer(i);    
}

发现jdk未-128到127的数据做了一个缓存,如果数字在这个范围内,是不会再从新new Integer的。问题,明白了,当为423时,会创建2个对象,而我们比较是使用 == 比较地址符的,所以肯定不相同。

我们可以查看下内存地址。15的内存地址

java 实现将Object类型转换为int类型

423的地址

java 实现将Object类型转换为int类型

423的内存地址不一样。所以我们需要使用equals来做比较,不应该使用==来比较

来源:https://www.cnblogs.com/yanl55555/p/12541563.html

标签:java,Object类型,int类型
0
投稿

猜你喜欢

  • springboot配置templates直接访问的实现

    2023-01-05 14:22:51
  • java 服务器接口快速开发之servlet详细教程

    2022-11-07 09:37:28
  • Android 图片选择详解及实例代码

    2021-09-13 13:13:19
  • Android Studio实现弹窗设置

    2022-08-20 19:49:03
  • Java基于IO流读取文件的方法

    2023-08-11 16:23:57
  • SpringBoot+JWT实现注册、登录、状态续签流程分析

    2022-09-29 09:07:11
  • 解决运行jar包出错:ClassNotFoundException问题

    2021-09-09 04:58:41
  • Java8中Optional类型和Kotlin中可空类型的使用对比

    2023-07-29 07:49:21
  • APK程序获取system权限的方法

    2023-09-05 06:41:49
  • 详解从ObjectPool到CAS指令

    2022-04-26 16:38:05
  • java 内嵌Groovy动态脚本操作

    2022-12-15 05:03:32
  • Mybatis Trim标签用法简单介绍

    2021-10-11 03:04:00
  • SpringBoot整合XxlJob分布式任务调度平台

    2022-07-09 09:47:37
  • Mybatis中的Criteria条件查询方式

    2022-02-21 06:49:46
  • C#编程总结(一)序列化总结

    2022-04-07 04:25:19
  • Android 破解视频App去除广告功能详解及解决办法总结

    2022-07-16 23:28:50
  • Java中单例模式的7种写法

    2021-09-05 23:40:57
  • Java数据结构之链表详解

    2023-10-20 09:14:08
  • jsp+servlet实现简单登录页面功能(附demo)

    2023-09-24 11:32:28
  • java实现短信通信的完整教程

    2023-03-23 23:03:40
  • asp之家 软件编程 m.aspxhome.com