Java一共分为两大类数据:基本数据类型、引用数据类型
基本数据类型:
数值型:
整型:byte 、int、 short、 long 默认值:0
浮点型:float、double 默认值:0
字符型:char 默认值:‘\u0000’
布尔型:boolean 默认值:false
引用数据类型:数组、类、接口 默认值:null
基本数据类型不牵扯到内存分配问题、一共有八种数据类型。
如果要想表示整数就使用int,表示小数就使用double;
如果要描述日期时间或者表示文件大小使用long;
如果实现内容传递或者是编码的转换使用byte;
如果要想实现逻辑的控制,可以使用boolean描述;
如果想要使用中文,用char可以有效控制;
如果按照保存范围:byte< int < long < double
整型
任何一个数字常量都属于int类型。
int 最大值如果继续增加就变成最小值,反之最小值继续减少就变成最大值了。形成了一个循环。就是数据溢出了,要想解决数据溢出就向更大的数据类型转换。
在程序的世界里面,数据类型的转换有以下规律:
数据范围小的数据与数据大的数据进行数学计算的时候,自动向大的数据范围转换。
数据范围大的数据要变成数据范围小的数据,就必须采用强制转换。
如果是常量进行强行强制转换,有两种是:常量标记(L、l),使用“(数据类型)“
byte的使用 -128~127
由于byte使用的特殊性,java对其有一定的改善
虽然任何一个整数都属于int类型,如果在byte数据范围之内,会自动帮助用户进行数据转换。
提示:所有的变量在使用时一定不要用默认值,都设置具体内容
浮点数
由于默认的小数类型就是double,所以使用了float表示需要强制转换。
float f1 = 10.2F;
float f2 = (float)2
早期开发考虑到内存的问题,往往能使用float就不使用double。而现在都使用float。
public classhello{
public static void main(String args[]){
int i = 8;
int x = 6;
System.out.println(i/(double)x);
}
}
字符型:char
byte是属于字节,按照传统的概念来讲,一个字符=2个字节。
Java使用的十六进制的UNICODE编码。
在程序之中使用’’声明的内容为字符
A(65) ~ Z(90)
a(97) ~ z(122)
0(48) ~ 9 (57)
char c =’A’;
int num = c ;
num = num + 32;
c = (char) num;
System.out.println(c); A~a
布尔型
布尔是一个数学家的名字。两种取值true和false
boolean flag = true ;
String型数据
String属于引用数据类型,是一个类,在java里面只要是类,首字母都是大写的。
String表示一个字符串,String要求使用““来操作。
int s1 = 100;
double s2 = 99.0;
String str = “加法计算 : ” + s1 + s2 ;
System.out.println(str); ------- 加法计算:10099.0
转义字符:\t 、\\ 、\n