一、JAVA数据类型

(一) 基本数据类型

基本类型分为八类:

①类型byte、位数:占8位、取值范围:-128~127(数据存储在内存中的最原始形态);

②类型:short、位数:占16位、取值范围:-32768~32767;

③类型:int、位数:占32位、取值范围:-2~2-1 ;

④类型:long、位数:占64位、取值范围:-2~2-1 ;

⑤类型:float、位数:占32位、取值范围:不详;

⑥类型:double、位数:占64位、取值范围:不详;

⑦类型:char、位数:占16位、取值范围:‘\u0000’~‘\uFFFF’;

⑧类型:boolean、位数:占1位、取值范围:true/false;

(二)数据类型转换

①自动类型转换:

自动类型转换也称作隐式类型转换;

将一种类型的变量赋值给另一种类型的变量时,只要满足以下条件,就会发生自动类型转换

两种类型之间相互兼容

目标类型大于源类型(即类型提升);

②类型提升规则:

有类型提升的情况下,编译器将自动进行类型转换,否则就要进行强制类型转换;

1.两种类型必须兼容,且目标类型大于源类型,例如: byte、char和short类型都可以提升为int型;

2.对于表达式而言,其最终结果将会与表达式中最高的数据类型相同;

③手动类型转换:

1.强制类型转换也称作显式类型转换;

2.如果被转换的值的数据类型大于其目标类型,将会丢失部分信息;

二、引用类型

(一) 引用数据类型的定义

在Java中,除了上述基本数据类型的变量以外,其余的 全都,属于引用数据类型;

包括:API中的类:String,File,对象全部是引用数据类型;

(二)引用数据类型的应用

①作为属性的类型使用;

②作为方法的返回值类型使用;

③作为方法的形式参数类型使用;

(三) 引用类型的赋值

引用类型都是对象,所以赋值都使用new调用构造方法进行赋值句号;

三、基本类型和引用类型的区别

基本数据类型

引用数据类型

概念

变量(单纯的值)

对象(引用)

存储位置

在栈中存值

在栈中存引用,在堆中存具体对象的属性值

赋值方式

直接赋值

new ,String类和包装器类可以直接赋值

四、基本数据类型的赋值

(一) 基本数据类型赋值

①基本数据类型之间赋值,是将值进行拷贝

例:int x=10;

int y=9;

x=y;

(二) 引用类型的赋值

①引用类型的赋值都是通过new调用构造方法;

②引用类型之间赋值,是虚地址之间的赋值;

(三) 引用类型的赋值

①在判断引用数据类型时判断的是地址,即虚地址一样才返回true;

②在判断基本数据类型时判断的是数值,即二进制一样才返回true;