一.数据类型的分类
Java是一种强类型语言,所有变量都需要先定义才能使用
基本数据类型
1.整数类型
byte占1个字节:-128~127
short占2个字节
int占4个字节:正负21亿
long占8个字节
2.浮点类型
float占4个字节
double占8个字节
3.字符类型
char占2个字节
4.布尔类型
boolean占1位,值只有true和false
什么是字节?
位(bit):是计算机内容数据存储的最小单位
字节(byte):是计算机中数据处理的基本单位,习惯用大写B来表示
1B(byte,字节)=8bit(位)
字符:是指计算机中使用的字母、数字、汉字和符号
//八大基本数据类型
//整数
byte num1 = 10;
int num2 = 20;//最常用
short num3 = 30;
long num4 = 30L;//long类型要在数字后面加个L
//浮点数
float num5 = 50.1F;//float类型要在数字后面加个F
double num6 = 3.1415926;
//字符
char name = \'李\';
//字符串String不是关键字,而是类
//String student = "张三";
//布尔,值只有true和false
boolean flag = true;
引用数据类型
1.类
String
Integer
Byte
Short
Long
Float
Double
Char
Boolean
2.接口
3.数组
二.扩展
1.整数
//整数扩展:进制
int i1 = 010;//八进制 0
int i2 = 10;//十进制
int i3 = 0x10;//十六进制 0x
System.out.println("i1:"+i1);
System.out.println("i2:"+i2);
System.out.println("i3:"+i3);
运行结果:
2.浮点数
//浮点数扩展
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全避免浮点数进行比较
//BigDecimal 数学工具类进行比较
float f = 0.1f;//0.1
double d = 1.0/10;//0.1
System.out.println("f==d:"+(f==d));//false
float d1=23131312312312312f;
float d2=d1+1;
System.out.println("d1==d2:"+(d1==d2));//true
运行结果:
3.字符
//字符扩展
char c1 = \'a\';
char c2 = \'中\';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);//强制转换
//所有字符的本质还是数字
运行结果:
4.转义字符
//转义字符
// \\t 制表符
// \\n 换行
System.out.println("Hello1:"+"Hello\\tWorld");
System.out.println("Hello2:"+"Hello\\nWorld");
运行结果:
5.字符串
//字符串
String s1=new String("Hello World");
String s2=new String("Hello World");
System.out.println("s1==s2:"+(s1==s2));//false,比较的是地址值
String s3="Hello World";
String s4="Hello World";
System.out.println("s3==s4:"+(s3==s4));//true
运行结果:
6.布尔值
//布尔值扩展
boolean flag=true;
if (flag==true){}
if (flag){}
//flag==true和flag是一样的