学习一门新的语言时,首先我们要学习的就是一些基础的知识,比如今天要总结的基本数据类型,掌握好了这些基本的语言基础知识能够让我们更好的学习下面的知识。
在java中有8种基本数据类型,其中6种是数值类型,另外两个分别是字符类型和布尔类型。在这6种基本类型中其中四种是整数类型,另外两种是浮点类型。
![](https://box.kancloud.cn/2016-03-23_56f1fee4ede8e.jpg)
### (一)整数类型
整数类型有四种分别为byte,short,int,long
![](https://box.kancloud.cn/2016-03-23_56f1fee508937.jpg)
### (二)浮点类型
浮点类型有两种分别为float(单精度)和double(双精度)
![](https://box.kancloud.cn/2016-03-23_56f1fee5236e3.jpg)
### (三)另外两种
还剩下两种分别为char和boolean型
**Char**类型用于存储单个字符,系统分配两个字节的内存空间。在定义时要用单引号括起来。
**Boolean**类型只用true和false两个值。它表示1位的信息.分别代表真和假。在java中是不可以用0或非0的整数替代true和false.这点是和C语言不同的.
### (四)基本数据类型的转换
1.boolean不可转换为其他的数据类型、
2.整型,字符型,浮点型的数据在混合运算中相互转换原则
容量小的类型自动转换为容量大的数据类型,大小排序:
Byte,short,char<int<long<float<double
Byte,short,char之间不会相互转换。它们在计算时会先转换为int类型。
3.容量大的数据转换为容量小的数据类型时要强制类型转换,但可能会造成精度降低或溢出
4.多种类型混合运算时系统会将所有的数据类型转换为容量最大的那一种数据类型。
5.实数常量默认为double,整数常量默认为int
### (五)下面就是一段代码的示例
这段代码后面的注释解释了在代码运行过程中的数据类型之间的转换
~~~
<span style="font-size:18px;"> public static void main(String[] args) {
int i1=123;
int i2=456;
double d1=(i1+i2)*1.2;//运算时首先会吧i1,i2转换为double类型,再做运算
float f1=(float)((i1+i2)*1.2);//需要加强制类型转换,后面的计算是double类型。
byte b1=1;
byte b2=2;//1,2是int类型可以这样,但是不要超出byte的表示范围
byte b3=(byte)(b1+b2);//b1与b2进行计算结果为int类型,需要强制类型转换(byte是一个字节,int是四个字节,如果超出范围会砍掉三个字节)
double d2=1e200;
float f2=(float)d2;//会产生溢出。
float f3=1.23f;//必须加f
long l1=3000000000L;//必须加L
long l=(long)f3;//强制装换会舍去小数部分(四舍五入)
}</span>
~~~
### (六)总结
学习就是不断的重复的过程,在VB,C++,C#,javascript的学习中,一开始都学习了程序设计语言的基本知识,虽说一些知识点说到了,知道怎么回事,但是却没有一个全局的认识,这次学习java又开始了基本知识的学习。这次可不能放过这次机会了。