JAVA数据类型
Java数据类型大致分基本数据类型和引用数据类型两大类,本文针对Java基本数据类型和引用数据类型做简单整理,希望对大家有帮助,如有所不对还望大家多多指教。
一,基本数据类型
数据类型名称 | 占用字节 | 默认值 | 封装器类 | 取值范围 | 分类 |
---|---|---|---|---|---|
byte | 1 | 0 | Byte | -128~127(-2的7次方到2的7次方-1) | 字节型 |
boolean | 1 | static默认false,其它无 | Boolean | true/false | 布尔型 |
short | 2 | 0 | Short | -32768~32767(-2的15次方到2的15次方-1) | 短整型 |
char | 2 | \u0000(空格) | Character | 0-65535即2的16次方-1(Unicode编码) | 字符型 |
int | 4 | 0 | Integer | -2147483648~2147483647(-2的31次方到2的31次方-1) | 整型 |
float | 4 | 0.0f | Float | 3.402823e+38~1.401298e-45(e+38 表示乘以10的38次方,而e-45 表示乘以10的负45次方) | 浮点型 |
long | 8 | 0.0l | Long | -9223372036854774808~9223372036854774807(-2的63次方到2的63次方-1) | 长整型 |
double | 8 | 0 | Double | 1.797693e+308~4.9000000e-324(同上) | 双精度浮点型 |
二,引用数据类型
引用数据类型 | 示例 |
---|---|
类(class) | String,Object,Integer,void,Thread |
接口 | Runnable,Cloneable,Callable |
数组 | String[],int[] |
枚举 | enum color{red,blue } |
注解 | @Controller,@RequestBody,@ResponseBody,@RequestMapping |
集合 | collection,map |
三,基本数据类型和引用数据类型区别
基本数据类型 | 引用数据类型 | |
---|---|---|
存储位置 | 栈 | 堆 |
传递方式 | 数值传递 | 引用传递 |
四,转型分析
将一种类型的值赋值给另一种类型是很常见的。在Java中,boolean 类型与其他7中类型的数据都不能进行转换,这一点很明确。但对于其他7种数据类型,它们之间都可以进行转换,只是可能会存在精度损失或其他一些变化。
转换分为自动转换和强制转换:
自动转换(隐式):无需任何操作。
强制转换(显式):需使用转换操作符(type)。
将6种数据类型按下面顺序排列一下:
double > float > long > int > short > byte
如果从小转换到大,那么可以直接转换,而从大到小,或char 和其他6种数据类型转换,则必须使用强制转换。