此系列文章是本人的学习笔记,专业术语不精还望见谅,在学习过程中自己遇到的问题可能会是很多小伙伴刚刚学习的时候遇到的问题,此类型文章仅供个人理解学习,不会涉及到每一个java细节,不供专业参考
数据类型
- 基本数据类型
八种基本数据类型:六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。(八种数据类型中short和long,float并不常用)
byte(字节),默认值是0,
short(短整型), 默认值是0,
int(整形),默认值是0,
long(长整型),默认值是0L,
float(单精度),默认值是0.0f,
double(双精度),默认值是0.0d,
char(字符型),
boolean(布尔型)默认值是false
*注意声明***char类型是字符类型,定义一个字符类型的时候需要严格注意:
//是一个字符,用单引号引起来
char a ='a';
//char b='ni';//这样是错误的,
char c ='你';
-
引用数据类型
类(class),接口(interface),数组
两种数据类型的不同是:基本数据类型存储的是数据本身,引用数据类型存储的是数据的空间地址即存放在堆中的首地址类型转换
基本类型中byte、short、int、long 和 float、double 依次增大,当后者转换成前者时需要强制转换,例如:long a = 100L;int b = (int)a ; 但前者转换成后者,则可以直接赋值,JVM会完成自动转换
自动类型转换:目标类型兼容或者长度大于源类型(即小转大),因为长度小的转换成长度大的,并不能占满大的内存,所以可以自动转换
int a = 100;
double b = a;
强制类型转换:即大转小,强转类型会有损耗,
double a = 10.5;
//int b = a;//这样是无法转换的并且会报编译时错误,要想转换需要用到强制类型转换的语法
int b = (int)a;//即将a强制转换成int类型的在赋值给int类型的b;
数据类型实在是不知道该要如何再详细的说了…能力不高,水平有限,大家多包涵