Java数据类型
创始人
2024-11-13 15:36:24
0

八大基本数据类型+引用数据类型

基本数据类型

整型:byte、short、int、long

浮点型:float、double

布尔型:boolean

字符型:char

对应的包装类为Byte、Short、Integer、Long、Float、Double、Character、Boolean

引用数据类型

包括类、接口、数组、枚举、注解、字符串

基本数据类型详解

基本类型存储大小初始化默认值取值范围
byte1字节(8位)0-128~127
short2字节(16位)0-32768~32767
int4字节(32位)0-2^31~2^31-1
long8字节(64位)0L-2^63 ~ 2^63 - 1
float4字节(32位)0.0f/
double8字节(64位)0.0d/
char2字节(16位)‘\u0000’/
boolean1字节(8位)falsetrue/false

 浮点型变量精度不高,解决办法:用BigDecimal类替换浮点型变量

BigDecimal(double val) : double类型的数据作为参数,交给BigDecimal对象【不用,因为double本身不精确】
BigDecimal(String val) : String类型的数据作为参数,交给BigDecimal对象【用这个】
注:double->String 直接拼接一个字符串""就行。

基本数据类型和引用数据类型的区别

1、存储方式:基本数据类型直接存储值,而引用数据类型存储的是对象的引用(内存地址)

2、内存分配:基本数据类型在栈上分配内存,而引用数据类型在堆上分配内存。栈上分配速度较快,但内存空间小,堆反之。

3、默认值:基本数据类型会有自己的默认值,而引用数据类型的默认值为null,表示没有引用指向任何对象

4、复制操作:基本数据类型进行复制时,会复制该变量的值。而引用数据类型进行复制时,只会复制对象的引用,两个变量指向同一个对象

5、参数传递:基本数据类型作为方法的参数传递时,传递的是值的副本,不会修改原始值。而引用数据类型作为方法的参数传递时,传递的是对象的引用,可以修改对象的属性或状态

6、比较操作:基本数据类型使用==进行比较时,比较的是值是否相等。而引用数据类型使用==进行比较时,比较的是引用是否指向同一个对象,如果要比较对象的内容是否相同,需要使用equals()方法

基础数据类型的转换

自动类型转换:【小->大】byte-short-int-long-float-double

强制类型转换:【大->小】小类型 变量名 = (大类型)值、

注意:自增/自减运算符、复合赋值运算符底层做了优化,内部自动强制类型转换; 如:++, --, +=, -=

包装类型

为什么需要

因为Java是一种面向对象语言,很多地方都需要使用对象而不是基本数据类型。比如,在集合类种,我们是无法将int、double等类型放进去的。因为集合的容器要求元素是Object类型。

为了让基本类型也具有对象的特征,就出现了包装类型,它相当于将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。

基本类型直接存储数据值,在栈上分配内存,占用固定的内存空间,。

包装类型是对象动态分配内存,在堆上创建,包含额外的信息,例如方法和字段,同时也占用更多的内存空间。

自动装箱和自动拆箱

包装类是对基本类型的包装,所以把基本数据类型转换成包装类的过程就是装箱;反之,把包装类转换成基本数据类型的过程就是拆箱

如:int的自动装箱都是通过Integer.valueOf()方法来实现的,Integer的自动拆箱都是通过Integer.intValue()来实现的。

相关内容

热门资讯

微信牛牛房卡招代理/上下分金花... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡来享受...
微信金花群怎么买房卡/怎么购买... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:160470940许多玩家在游戏中会购买房...
微信炸金花房卡链接在哪弄得/微... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡...
金花链接如何创建房间玩/微信牛... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:160470940许多玩家在游戏中会购买房卡来享...
房卡必备教程“微信金花房卡招代... 新全游牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:160470940许多玩家在游戏中会购买房...
终于找到“炸金花房卡链接在哪弄... 炫酷大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡来...
房卡必备教程“微信金花房卡怎样... 新九哥牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡...
微信炸金花链接在哪里买/创建金... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡...
微信炸金花房间怎么创建/微信链... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡...
微信上玩炸金花充值方式/微信链... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:160470940许多玩家在游戏中会购买房卡来享...
微信炸金花链接在哪里买/牛牛金... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:160470940许多玩家在游戏中会购买房...
如何购买金花房卡普及介绍/软件... 金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:44346008许多玩家在游戏中会购买房卡来享受...
一分钟推荐“微信开金花群房卡/... 人皇大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:44346008许多玩家在游戏中会购买房卡来...
牛牛链接房卡在哪里弄/链接金花... 牛牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡来享受...
房卡必备教程“微信炸金花链接怎... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:44346008许多玩家在游戏中会购买房卡...
ia实测“微信拼三张房卡哪里购... 斗牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡来享受...
上下分金花牛牛房卡怎么冲/微信... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡...
ia实测“微信炸金花链接怎样弄... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:86909166许多玩家在游戏中会购买房卡...
哪里有卖微信炸金花房卡/微信怎... 微信炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡...
金花大厅链接房卡怎么弄的/微信... 金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:15984933许多玩家在游戏中会购买房卡来享受...