

Java是面向对象语言,其概念为一切皆为对象,但基本数据类型是个例外。基本数据类型大多是面向机器底层的类型,它是“值”而不是一个对象,对于声明在方法中的基本类型变量,它存放于“栈”中而不是存放于“堆”中。这有很多好处,例如不需要和对象一样需要在堆中分配内存,然后搞个引用指向它。不需要GC,因为是直接在栈上分配空间,方法运行结束就出栈回收掉了。可以放心的使用最基本的运算符进行比较和计算等等。

数据类型详细介绍
一.整型(byte、short、int、long)
虽然byte、short、int、long 数据类型都是表示整数的,但是它们的取值范围可不一样。
byte 的取值范围:-128~127(-2的7次方到2的7次方-1)
short 的取值范围:-32768~32767(-2的15次方到2的15次方-1)
int 的取值范围:-~(-2的31次方到2的31次方-1)
long 的取值范围:-~(-2的63次方到2的63次方-1)
由上可以看出 byte、short 的取值范围比较小,而long的取值范围最大的,所以占用的空间也是最多的。int 取值范围基本上可以满足我们的日常计算需求了,所以也是我们使用的最多的一个整型类型。
二.浮点型(float、double)
float(单精度浮点型)取值范围:3.e+38~1.e-45
double(双精度浮点型)取值范围:1.e+308~4.e-324
double 类型比float 类型存储范围更大,精度更高。
带小数点的字面量默认属于double类型,所以声明一个float类型的变量时,都要在数字后面加上 "F" 或 "f"。
在Java中,对浮点型数据使用基本的加减乘除运算符,计算的数据可能不是完全精确的,有时候可能出现小数点后几位浮动。对于金融行业或者和钱有关的业务来说,这是不可接受的,当出现与金钱数值相关的场景,建议使用BigDecimal 进行运算。

char 有以下的初始化方式:
// 可以是汉字,因为是Unicode编码char ch = 'a'; // 可以是十进制数、八进制数、十六进制数等等。char ch = 1010; // 可以用字符编码来初始化,如:'\0' 表示结束符,它的ascll码是0,这句话的意思和 ch = 0 是一个意思。char ch = '\0';
br
Java是用 unicode 来表示字符,“中” 这个中文字符在 unicode 就是两个字节。
unicode / gbk / gb2312 是两个字节,utf-8 是3个字节。
对于字符串(String)可以通过 String.getBytes(encoding) 方法,获取指定编码类型的byte数组。
四.布尔型(boolean)
boolean 型只有两个取值 true 和 false
它的默认值是 false
对于布尔型占用的空间,得看JVM对于它的具体实现,有些JVM底层其实是使用0和1来表示true和false,那么就是4字节。
阅读推荐
🔗数计学院举办2023级ACM程序设计新生赛颁奖大会
🔗【知识科普】电脑使用小知识
🔗每日科普——HTML是什么?

🔹编 辑/团总支宣传部 朱泽玮
🔹制 图/团总支宣传部 吴奇洁
🔹审核/王继顺 渠雨萌
转载需私信后台,并注明来源
欢迎投稿至邮箱@.com


版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/2145.html