java基础类型
来源:互联网 发布:淘宝网开网店步骤 编辑:程序博客网 时间:2024/06/04 19:58
java的8种基本类型都有其对应的装箱类型:
byte
8Byteshort16Shortint32Integerlong64Long浮点型float32Floatdouble64Double文本型char16Character逻辑型boolean8Boolean注:装箱类型比基本类型多一个非功能值null。
自动装箱:valueOf(int i)
自动拆箱:intValue()
基本类型优于装箱类型:
- 装箱类型是引用类型,需要额外的空间代价;
- 装箱类型与基本类型运算,需要拆箱,反复的装箱、拆箱降低性能;
- 装箱类型的判等(==):小于128,自动拆箱,做基本类型的比较;大于127,做对象相等判断。
什么时候使用装箱类型:
- 作为集合的元素、键、值;
- 在参数化类型中,如ThreadLocal<Integer>,因为反射需要引用类型。
常见问题:
- 场景:定义了int常量SUCCESS=0,逻辑处理中,从数据库取出的某条记录状态字段(Integer status),判断是否为success,抛出了NullPointException。
分析:典型的int与Integer比较问题。问题关键在于Integer与int比较时,会自动拆箱,status.intValue();若此时的status为null,就会出现该问题。
解决方案:if (status != null && status == SUCCESS) { //处理}
或者
SUCCESS指定为Integer,使用SUCCESS.equals()。
0 0
- java基础类型
- Java基础类型总结
- Java String类型基础
- [Java基础] 类型转换
- java基础类型
- Java基础--基本类型
- java基础类型
- java基础类型
- java基础-类型转换
- java基础primitive 类型
- java基础-类型信息
- java--基础类型
- Java基础类型总结
- Java基础类型总结
- Java基础类型总结
- java基础-变量类型
- JAVA基础类型
- Java基础--枚举类型
- 将text中的数值转换成十六进制
- 十进制改为十六进制
- 随机十个数的排序,选择法排序
- 选择法排序
- vb23
- java基础类型
- C/C++ 中求数组长度
- 选择法排序
- 16进制
- 16.5.7
- PCL行人检测
- UDP组播的实现
- vb作业-排序法
- 1230转化成十六进制