4.2.Java基础语法之数据类型
-
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后使用
-
弱类型语言
-
Java的数据类型分为两大类
-
基本类型(primitive type)
-
数值类型
-
整数类型
-
byte 占一个字节 范围:-128~127
-
short 占2个字节 范围:-32768~32767
-
int 占4个字节 范围:-2147483648~2147483647
-
long 占8个字节 范围:-9223372036854775808~9223372036854775807
-
-
浮点类型
-
float 占4个字节
-
double 占8个字节
-
-
字符类型 char 占2个字节
-
-
Boolean类型:占1位,值只有ture和false
-
-
引用类型(reference type)
-
类
-
接口
-
数组
-
-
//八大基本数据类型
//整数
int num1 = 10;//最常用
byte num2 = 20;
short num3 = 30;
long num4 = 30L;//long类型在数字后面加个L
//小数:浮点数
float num5 = 20.1F;//float类型后加个F
double num6 = 3.1415926;
//字符
char name1 = 'l';
//字符串,String不是关键字,类
String name2 = "lizhikun";
//布尔值:是非
boolean flag0 = true;
boolean flag1 = false;
-
字节
-
位(bit):是计算机内部储存的最小单位,11001100是一个8位二进制数
-
字节(byte):是计算机中数据处理的基本单位,习惯上用B来表示
-
1B=8bit
-
字符:是指计算机中使用的字母、数字、字和符号
-
1bit表示1位,1byte表示一个字节,1024B=1KB , 1024KB=1M,1024MB=1G
-
-
扩展
-
整数
-
进制:二进制0b 十进制 八进制0 十六进制0x
-
int i1 = 10;
int i2 = 010;//八进制
int i3 = 0x10;//十六进制
int i4 = 0b10;//二进制-
浮点数
//银行业务可使用 BigDecima 数学工具类
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全避免使用浮点数进行比较
//最好完全避免使用浮点数进行比较
//最好完全避免使用浮点数进行比较
float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);
System.out.println(f);
System.out.println(d);
float d1 = 2323232322132232121f;
float d2 = d1+1;
System.out.println(d1==d2);-
字符
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);
//所有字符的本质还是数字
//Unicode编码 2字节 0~65535 2^16=65536
//U0000-UFFFF
char c3 ='\u0061';
System.out.println(c3);-
转义字符
1.八进制转义序列:\ + 1到3位5数字;范围'\000'~'\377'
\0:空字符
2.Unicode转义字符:\u + 四个十六进制数字;0~65535
\u0000:空字符
3.特殊字符:就3个
\":双引号
\':单引号
\\:反斜线
4.
\r 回车
\a 响铃(BEL)
\b 退格(BS),将当前位置移到前一列
\f 换页(FF),将当前位置移到下页开头
\n 换行(LF),将当前位置移到下一行开头回车(CR),将当前位置移到本行开头
\t 水平制表(HT)(跳到下一个TAB位置)
\v 垂直制表(VT)
\\ 代表一个反斜线字符"\”
\' 代表一个单引号((撇号)字符
\" 代表一个双引号字符
\? 代表一个问号
\0 空字符(NUL)
\ddd 1到3位八进制数所代表的任意字符
\xhh 十六进制所代表的任意字符
点的转义:. ==> u002E
美元符号的转义:$ ==> u0024
乘方符号的转义:^ ==> u005E
左大括号的转义:{ ==> u007B
左方括号的转义:[ ==> u005B
左圆括号的转义:( ==> u0028
竖线的转义:| ==> u007C
右圆括号的转义:) ==> u0029
星号的转义:* ==> u002A
加号的转义:+ ==> u002B
问号的转义:? ==> u003F
反斜杠的转义: ==> u005C-
布尔类型
boolean flag = true;
if (flag==true){}
if (flag){}
//上面两行是一样的 -