Java中的一个类型转换问题
2024-10-09 01:41:36
一.Object转Integer
Java中hibernate或者ResultSetHandler查询sql语句, 返回的object类型其实是Long类型, 而不是Integer类型, 因此此时直接将返回的Object转换为Integer类型会抛出类型转换的错误. 我们必须先将其转换为Long类型, 再转换为Integer类型.
//int count = ((Integer)query.uniqueResult()).intValue();
//改成
int count = ((Number)query.uniqueResult()).intValue();
//这样就可以两个版本同时兼容.
注: 可通过instanceof关键字判断object对象的真实类型.
二. Long与Integer类型互转
Java中引用类型之间的互相转换必须要有继承关系. 但Integer与Long类型之间没有继承关系. 因此它们之间是不可以直接进行转换的.
可通过如下方式转换:
1.将long型转化为int型,这里的long型是基础类型:
long a = 10; int b = (int)a;
2.将Long型转换为int 型的,这里的Long型是包装类型:
Long a = 10; int b=a.intValue();
3.将int型转化为long型,这里的int型是基础类型:
int a = 10; long b = (int)a;
4.将Integer型转化为long型,这里的Integer型是包装类型:
int a = 10; Long b = a.longValue();
最新文章
- Linq专题之提高编码效率—— 第一篇 Aggregate方法
- STM32 Unicode 与 GBK 转换 .bin文件放到SD卡是啥意思
- IOS 集成第三方登录
- PHP Warning: date() [function.date]: It is not safe to rely on the system's timezone
- UIcollectionView的使用(首页的搭建3)
- div边框阴影的实现【转载】
- Jquery精妙的自定义事件
- Java并发-线程安全性
- 使用STM32Cube在STM32F7开发板上实现SD+Freertos+Fatfs
- System.out.print()执行顺序
- 关于JS的一些案例,setInterval,动态图片
- recovery 恢复出厂设置失败Data wipe failed
- 个人作业Week3
- 使用ThreadLocal来实现一个本地缓存
- 有关html5的history api
- Linux下源码编译安装MySQL 5.5.8
- 9th 学习博客:使用Codebloks实现C++的图形化界面
- 4540: [Hnoi2016]序列
- 【操作系统、UNIX环境编程】进程间通信
- 2017/11/3 Leetcode 日记