Java数据类型

Java数据类型

Java数据类型分为引用数据类型和内置数据类型即八大数据类型
所有数据类型的默认值均为逻辑零,即计算机元器件低电为状态

引用数据类型数据类型

其通过引用类指向一个对象声明就是实例化如:String等

八大数据类型

需要注意的是:一个字节占八位

整数型:byte、short、int、long(以精度大小从小到大排序)

类型只能是小写,大写是包装类名

byte(1字节,8位):-128~127 即 (-27) ~ (27 - 1) 默认值为0

short(2字节,16位):-32768~32767 即 (-215) ~ (215 - 1) 默认值为0

int(4字节,32位):-2147483648~2147483647 即 (-231) ~ (231 - 1) 默认值为0,作为Java显示整数的字面量

long(8字节,64位):约负九百亿亿到正九百亿亿 即 (-263) ~ (263 - 1) 默认值为0L

Java整数字面量(直接量 或 常量)默认为int整型,因此在对使用超过int整型范围的字面量需要在数字后加L,如:

long l = 10000000000000L;

字符型:char(2字节,16位)

默认为值\u0000

与short字节数相同,但因为其字符范围与short不同,因此一般不与其相互转换

Java使用Unicode编码,char类型为单个字符(两个个字节),赋值时需要以单引号赋值

前128位为ASCII编码

char c = 'c';

浮点型(小数型):float(4字节,32位)、double(8字节,64位)

float:默认值为0.0F

double:默认值为0.0D,作为Java显示小数的字面量

Java小数字面量默认为double浮点型,当需要将字面量赋值给float需要在数值后加F,如:

float f = 0.1234F

逻辑型(布尔类型):boolean(1位)

其值只有false和true

默认值为false,不能将0或1直接赋给boolean型

ASCII码

使用数字对图型进行编号

定义了128个字符对应128个编号,Unicode的前128个字符是ASCII码表

可以通过强制类型转换在整型和字符型间切换,如:

int a;
char c = '9';
a = (int)c;
System.out.println(a);
//结果为57

常用ASCII码表:大小写全字母和数字

​ 0 ~ 9:48 ~ 57

​ A ~ Z:65 ~ 90

​ a ~ z:97 ~ 122

数据类型转换

小范围数据到大范围数据转换一般不会丢失数据,反之必定丢失数据精度

大容量变量不能直接赋值给小容量变量,需要进行数据转换

需要注意的是boolean类型不能和其他类型转换

char和short类型字节数相同但是范围不一样因此一般不用其互相转换,char一般和int类型转换为整型

强制类型转换

short number1 = 10000;
byte number2 = (byte)number1;//强制类型转换,将大数据装入小容器,括号内为需要转换成的数据类型
System.out.println(number2);
//结果为16

浮点数转为整数去除小数点后数字,整数转为浮点数则在整数后加小数,小数位用0补齐,如:

float f1 = 3.14F;
int i1;
i1 = (int)f1;
System.out.println(i1);//结果为3
float f2;
int i2 = 3;
f2 = (float)i2;
System.out.println(i2);//结果为3.0

自动类型转换

Java在赋值时可以自动将小容量赋值给大容量变量

按照这个顺序左边的类型可以直接赋给右边的类型

byte -> short -> char -> int -> float -> double

byte b = 1;
short s;
s = b;//不会报错
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值