数据类型进阶及数据类型转换

六、数据类型进阶

(一)整数类型

1.Java4种整数类型:byteshortintlong

2.java默认的整数计算类型是int型。

如:byte a = 5;

byte b = a+10;(这里会报错,因为计算的默认结果是int类型。改为:byte b = (byte)a+10;或者int b = a+10;)

3.整数的字面量默认是int类型;若字面量超过int类型的最大值(2^31-1),则字面量是long类型(末尾加l/L表示long类型)。

4.java底层byteshort均按照int类型来计算。

(二)浮点类型

1.浮点类型是用于表示小数的数据类型。

2.浮点数表示原理:二进制科学记数法。

3.Java浮点类型:floatdouble

1float:32位,1位符号位,8位指数位,23位尾数。

float的精度是23位,即能精确表达23位的数,一旦超过23位就会被截取。

小数是以尾数长度来表示精度的,如pi=3.1415926,精度是7位。

float的存储数据的范围大于int类型,但精度比int小,int类型的精度是31位。

(2)double:1位符号位,11位指数,52位尾数。

double的范围远远大于long,但double的精度小于long(long类型的精度是63)

4.Java默认浮点类型的计算结果是double类型,字面量也是默认double类型。

若要给float类型赋值,字面量后需添加f/F来表示float类型。如:float f = 5.3f;

(三)字符类型

1.char类型的字面量可以是一个英文字母、字符或一个汉字,用单引号包括。

2.Unicode



常用的是数字0-90:48),大小写字母(a:97,A:65)对应的Unicode码。

(四)转义字符

1.通过转义字符来表示一些特殊的字符,格式是用一个反斜杠表示“\”。

如:’\n’表示换行;’\t’表示制表位字符;’\\’表示\’\’’表示单引号;’\”’表示双引号;


(五)布尔类型

1.布尔类型表示肯定和否定两种情况true/false

2.通常用在循环和条件语句中。

如:


七、数据类型转换

(一)小类型转换为大类型

1.小类型向大类型转换会自动完成,不需要编写额外的代码。自动类型转换也称为隐式类型转换。

2.自动类型转换包括:byte->short->int->long->float->double

charint类型在某些特殊情况下也能自动相互转化。

3.小类型的精度高于大类型时,会出现精度丢失的现象。

4.例:int类型转换为float类型

int类型:32位,其中1位符号位,尾数31位(精度);

float类型:32位,1位符号位,8位指数,23位尾数(表示精度)。



(二)大类型向小类型转换

1.也叫强制类型转换,显示转换。

byte a = 5;

byte b = (byte)a+10;//将计算结果(int类型)强制类型转换为byte类型。

b = 5+10;//无需类型转换,Java对于可直接得出结果的计算结果直接保存在变量b 中,不会出错。

(三)int类型和char类型的转换

1.java处理char类型时在底层是按int类型来处理的。


1.字符类型的数据可进行数值计算。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值