2021-01-18

Java基本数据类型

1.Java基本数据类型
变量就是申请内存来存储值,也就是说,当创建变量的时候,需要在内存中申请空间。
内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来存储该类型数据。
因此,通过定义不同类型的变量,可以在内存中存储整数、小数或者字符。

Java的两大数据类型:
内置数据类型
引用数据类型

2.内置数据类型
Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符型,还有一种布尔型。
在这里插入图片描述
float类型(32位):1bit(符号位)8bits(指数位)23bits(尾数位)
double类型(64位):1bit(符号位)11bits(指数位)52bits(尾数位)
实例
对于数值类型的基本类型的取值范围,我们无需强制去记忆,因为它们的值都已经以常量的形式定义在对应的包装类中了。请看下面的例子:
在这里插入图片描述
编译以上代码输出结果如下所示:
在这里插入图片描述
3.引用数据类型
引用类型变量由类的构造函数创建,可以使用它们访问所引用的对象。这些变量在声明时被指定为一个特定的类型,比如Employee、Pubby等。变量一旦声明后,类型就不能被改变了。
对象、数组都是引用数据类型。
所有引用类型的默认值都是null。
一个引用变量可以用来引用与任何与之兼容的类型。
例子:Animal animal = new Animal(“giraffe”)。
4.Java常量
常量就是一个固定值。它们不需要计算,直接代表相应的值。
常量指不能改变的量,在Java中用final标志,声明方式和变量类似:
在这里插入图片描述
虽然常量名也可以用小写,但为了便于识别,通常使用大写字母表示常量。
字面量可以赋给任何内置类型的变量。比如:
在这里插入图片描述
byte、int、long、和short都可以用十进制、16进制以及8进制的方式来表示。
当使用常量的时候,前缀o表明是8进制,而前缀Ox代表16进制。例如:
在这里插入图片描述
和其他语言一样,Java的字符串常量也是包含在两个引号之间的字符序列。下面是字符串型字面量的例子:
在这里插入图片描述
字符串常量和字符常量都可以包含任何Unicode字符。例如:
在这里插入图片描述
Java语言支持一些特殊的转义字符序列。
在这里插入图片描述
5.机器数
一个数在计算机中的表现形式叫做机器数,这个数有正负之分,在计算机中用一个数的最高位(符号位)用来表示它的正负,其中0代表正数,1代表负数。

例如正数7,在计算机中用一个8位的二进制数来表示,是00000111,而负数-7,则用10000111表示,这里的00000111和10000111是机器数。
6.真数
计算器中的机器数对应的真实的值就是真数,对最高位(符号位)后面的二进制数转换成10进制,并根据最高位来确定这个数的正负。对于上面的00000111和10000111来说,对最高位后面的二进制数转换成10进制是7,在结合最高位的值,得出对应的真数分别是7和-7。
7.原码
用第一位表示符号,其余位表示值。因为第一位是符号位,所以8位二进制数的取值范围就是:[ 1111 1111,0111 1111 ]即[-127,127],原码是容易被人脑所理解的表达方式。
8.反码
正数的补码反码是其本身,负数的反码是符号位保持不变,其余位取反。例如正数1的原码是[0000 0001],它的反码是其本身。

[0000_0001],-1的原码是[1000_0001],其反码是[1111 1110]
9.补码
正数的补码是其本身,负数的补码是在其反码的基础上+1,例如正数1的原码是[0000_0001],它的补码是其本身[0000_0111],

-1的补码是[1111 1111]。

基本数据类型–>包装类
装箱:基本数据类型 转换为 包装类类型
拆箱:包装类类型 转换为 基本数据类型
从jdk1.5开始支持自动装箱和拆箱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值