Java基本数据类型
整数类型:byte,1字节,8位,最大存储数据量是255,存放的数据范围是-128~127之间。
整数类型:short,2字节,16位,最大数据存储量是65536,数据范围是-32768~32767之间。
整数类型:int,4字节,32位,最大数据存储容量是2的32次方减1,数据范围是负的2的31次方到正的2的31次方减1。
整数类型:long,8字节,64位,最大数据存储容量是2的64次方减1,数据范围为负的2的63次方到正的2的63次方减1。
浮点类型:float,4字节,32位,数据范围在3.4e-45~1.4e38,直接赋值时必须在数字后加上f或F。
浮点类型:double,8字节,64位,数据范围在4.9e-324~1.8e308,赋值时可以加d或D也可以不加。
字符型:char,2字节,16位,存储Unicode码,用单引号赋值。
布尔型:boolean,只有true和false两个取值
类型 | 字节 | 位 | 最小范围,最大范围 |
---|---|---|---|
byte | 1 | 8 | -2^7, 2^7-1 |
short | 2 | 16 | -2^15, 2^15-1 |
int | 4 | 32 | -2^31, 2^31-1 |
long | 8 | 64 | -2^63, 2^63-1 |
float | 4 | 32 | 1.4E-45,3.4028235E38 |
double | 8 | 64 | 4.9E-324,1.7976931348623157E308 |
char | 1 | 16 | 0,65535 |
各类型的默认值
类型 | 默认值 |
---|---|
byte | 0 |
short | 0 |
int | 0 |
long | 0L |
float | 0.0f |
double | 0.0d |
char | ‘u0000’ |
boolean | false |
String | null |
类型转换
转换规律
1.数值类型之间转换;
小到大,正常转换
大到小,强制转换
2.整数 和char之间的转换;
public class Type_01 {
//类型转换
public static void main(String[] args) {
/**
* 1.同类型 :大到小 强制转换
* 小到大 直接转换
*/
short s=12;
int i=13;
//s=i;大到小转换,即将i的值赋给s这样写会报错,这时候需要强制转换,快捷键alt+回车,再回车
s= (short) i;//快捷键后强制转换
i=s;//小到大转换,即将s的值赋给i,直接转换
byte b=1;
long l=2;
l=b;//小到大直接转换
/**
* 2.1不同类型 :正常型
*/
//1. int(4个字节) float(4个字节)
int i1=12;
float f1=12.3f;
//i1=f1; 大到小转换,即将f1的值赋给i1这样写会报错,这时候需要强制转换,快捷键alt+回车,再回车
i1= (int) f1;//快捷键后强制转换
f1=i1;//小到大转换,即将i1的值赋给f1,直接转换
/**
*2.2 不同类型 :非正常型
*/
//int(4) double (8) byte float
//int char
int a=97;
char c='a';
a=c;
//c=a;
c= (char) a;
System.out.println((char)33);
}
}
转义字符
转义字符 | 意义 | ASCII码值(十进制) |
\a | 响铃(BEL) | 007 |
\b | 退格(BS) ,将当前位置移到前一列 | 008 |
\f | 换页(FF),将当前位置移到下页开头 | 012 |
\n | 换行(LF) ,将当前位置移到下一行开头 | 010 |
\r | 回车(CR) ,将当前位置移到本行开头 | 013 |
\t | 水平制表(HT) (跳到下一个TAB位置) | 009 |
\v | 垂直制表(VT) | 011 |
\\ | 代表一个反斜线字符''\' | 092 |
\' | 代表一个单引号(撇号)字符 | 039 |
\" | 代表一个双引号字符 | 034 |
\0 | 空字符(NULL) | 000 |
\ddd | 1到3位八进制数所代表的任意字符 | 三位八进制 |
\xhh | 1到2位十六进制所代表的任意字符 | 二位十六进制 |