JAVA基本数据类型详细介绍

JAVAx数据类型

Java基本类型共有八种,基本类型可以分为三类

类型分类 类型
字符类型 char
布尔类型 boolean
数值类型 byte、short、int、long、float、double

数值类型又可以分为

类型分类 类型
整数类型 byte、short、int、long
浮点数类型 float、double

JAVA中的数值类型 不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。
实际上,JAVA中还存在另外一种基本类型void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。

Java决定了每种简单类型的大小。这些大小并不随着机器结构的变化而变化。这种大小的不可更改正是Java程序具有很强移植能力的原因之一。下表列出了Java中定义的简单类型、占用二进制位数及对应的封装器类。:

类型 位数 取值范围 包装类 默认值
byte 8位 最大存储量是255,数据范围是-128~127之间 Byte (byte)0
short 16位 最大存储量是65536,数据范围是-32768~32767之间 Short (short)0
int 32位 最大存储量是232-1,数据范围是-231~ 231-1 Integer 0
long 64位 最大存储量是264-1,数据范围是-263~263-1 Long 0L
float 32位 数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F Float 0.0f
double 64位 数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加 Double 0.0d
boolean 8位(内存对齐) 只有true和false两个取值 Boolean false
char 16位 存储Unicode码,用单引号赋值 Charter \u0000(null)

自动装箱、拆箱

装箱就是将基本数据类型转换为封装器类型;拆箱就是将封装器类型转换为基本数据类型。
JAVA基本数据类型详细介绍_第1张图片
总结:
1、需要知道什么时候会引发装箱和拆箱
2、装箱操作会创建对象,频繁的装箱操作会消耗许多内存,影响性能,所以可以避免装箱的时候应该尽量避免。
3、equals(Object o) 因为原equals方法中的参数类型是封装类型,所传入的参数类型(a)是原始数据类型,所以会自动对其装箱,反之,会对其进行拆箱
4、当两种不同类型用比较时,包装器类的需要拆箱, 当同种类型用比较时,会自动拆箱或者装箱

类型转换

数值类级别从低到高为:byte,char,short(这三个平级)–>int–>float–>long–>double
自动类型转换:从低级别到高级别,系统自动转的;
强制类型转换:什么情况下使用?把一个高级别的数赋给一个别该数的级别低的变量;

你可能感兴趣的:(#,JAVA基础,java,编程语言,数据结构)