掌握java数据类型的划分
掌握java中的八种基本数据类型
掌握数据类型间的相互转换
在之前讲解过的一个简单的计算程序,进行两个数字的相乘操作,实际上在那里面就已经使用到了一种数据类型—整型int。
分为两大类型:
1.基本数据类型:类似于普通的值。
2.引用数据类型:传递的是内存的地址,很类似于C语言中的指针问题。
浮点类型实际上就是表示小数。
Java的数据类型是有其取值范围的,要使用一个类型必须按照一个范围指定其内容,double类型可以装下全宇宙的数据。对于数据来说,设置内容的时候应该放在整个允许的范围之中,如果超过了此范围,则肯定会出现数值不正确的情况。
一个数据有自己的保存范围,超过长度则编译的时候就会出现错误,以上为整型赋值的语句,已经超过了整型的允许范围,一定要在整型允许的范围之中保存数字。
数据的溢出:
当整数的数据大小超出了可以表示的范围,而程序中又没有做数值范围的检查时,这个整型变量所输出的值将发生紊乱,且不是预期的运行结果。
当一个数字已经是最大或最小值的时候,再进行增加或减少操作,就会产生数据的溢出。
例如:求出整型的最大值
现在对求的最大值进行加法操作后运行结果为:
整型的最大值加1之后变成了整型的最小值,加2之后变为了整型的最小值加1,这个涉及到位运算的问题。
现在要想避免数据的溢出,可以采用扩大数据类型的方式。整型再网上扩大为长整型long,长整型能放的数据比整型更大。
如果要解决数据溢出的问题,则可以采用扩大数据范围的方式完成。
字符类型:
字符类型在内存中占有2个字节,可以用来保存英文字母等字符。计算机处理字符类型时,是把这些字符当成不同的整数来看待,因此,严格说来,字符类型也算是整数类型的一种。
对于数字而言,数字和字符之间是可以转换的,通过ASCII码进行转换的。
转义字符在开发中使用的非常多
定义两个小数相乘,在java中一个数字或者一个小数实际上也都是存在默认类型的:
小数(1.1,1.2)的默认类型是double类型,整数(1,2,3)的默认类型是int类型。在开发中基本上使用到float就够了。
public class DataDemo07{
public static void main(String args[]){
boolean flag = true ; // 定义布尔型变量
System.out.println("flag = " + flag) ; // 打印输出
}
}
在一般的语言中(C语言)使用0和1表示true和false。
char类型变量的系统默认值是空的字符,开发中尽可能为每一个变量指定其具体的内容,不用使用其默认值,这样对于初学者来讲可以减少一些代码的问题,
数据类型的转换:
Java的数据类型在定义时就已经确定了,因此不能随意转换成其它的数据类型,但Java允许用户有限度地做类型转换处理。数据类型的转换方式可分为“自动类型转换”及“强制类型转换”两种。
数据的自动类型转换:
在程序中已经好了数据类型的变量,若是想用另一种数据类型表示时,Java会在下列的条件皆成立时,自动做数据类型的转换:
1.转换前的数据类型与转换后的类型兼容。
2.转换后的数据类型的表示范围比转换前的类型大。
10/3因为其默认的类型是int型,所以所有的数据都会以整型的形式出现,那么结果就是3,小数点会省略掉。
public class DataDemo10{
public static void main(String args[]){
int i = 1 ; // 定义整型变量
int j = 2 ; // 定义整型变量
System.out.println("1 + 2 = " + 1 + 2) ;
System.out.println("1 + 2 = " + (1 + 2)) ;
}
}
所有的数据类型都会向字符串转换。
总结:
1、java中的数据类型划分
2、八种基本数据类型,包括长度,常量的默认值
3、String:任何类型都会向String进行转换