JAVA学习 数据类型的概述和分类

xiaoxiao2021-02-28  109

新博客地址: vonsdite.cn

JAVA 数据类型概述与分类

A: 为什么有数据类型 Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间 B: Java中数据类型的分类 基本数据类型引用数据类型 面向对象部分讲解 C: 基本数据类型分类(4类8种) 整数型 byte 占一个字节 -128到127short 占两个字 -215~215-1int 占四个字节 -231~231-1long 占八个字节 -263~263-1 浮点型 float 占四个字节 -3.403E38~3.403E38 单精度double 占八个字节-1.798E308~1.798E308 双精度 字符型 char 占两个字节 0~65535 布尔型 boolean boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小

隐式转换

Java中的默认转换规则 取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算

强制转换

如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同

注意

定义不同数据类型的变量时

JAVA 整数默认数据类型时int类型, 浮点数默认数据类型是double类型在定义long类型时,比如 long a; 赋值时,应a = 1500L; (后面加上L的标识)在定义float类型时,比如 float b; 赋值时, 应b = 1.5F; (后面加上F的标识)

使用变量问题

a: 作用域问题

同一个区域不能使用相同的变量名

b: 初始化值问题

局部变量在使用之前必须赋值 !!!!

c: 一条语句可以定义几个变量

int a,b,c…;

混合运算时

进行混合运算的时候,byte,short,char不会相互转换,都会自动类型提升为int类型,其他类型进行混合运算的是小的数据类型提升为大的

byte,short,char – int – long – float – double

long: 8个字节

float:4个字节

IEEE754

4个字节是32个二进制位

1位是符号位

8位是指数位

00000000 11111111

0到255

1到254

-126到127

23位是尾数位

每个指数位减去127

A:它们底层的存储结构不同。

B:float表示的数据范围比long的范围要大

long:2^63-1float:3.410^38 > 210^38 > 28^38 = 22338 = 2*2^114 > 2^63-1
转载请注明原文地址: https://www.6miu.com/read-34661.html

最新回复(0)