数据类型
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用(安全性增强但速度变慢了)
弱类型语言
java的数据类型分两大类
- 基本类型(primitive type)
数值类型:
整数类型:
byte占1个字节范围:-128-127
short占2个字节范围:-32768-32767
int占4个字节范围:-2147483648-2147483647
long占8个字节范围:-9223372036854775808-9223372036854775807
浮点类型:
float占四个字节
double占8个字节
字符类型:
char占两个字节
扫描二维码关注公众号,回复:
13362853 查看本文章
boolean类型:占1位其值只有true和false两个
//八大数据类型
//整数
byte num1 = 10; //最常用
short num2 = 20;
int num3 = 30;
long num4 = 30L; //Long类型要在数字后面加个L
//浮点数(小数)
float num5 = 40.1F; //float类型要在数字后面加个F
double num6 = 3.1415926;
//字符
char name = 'A';
//字符串,String不是关键字,是类
String nameA = "小李;
//布尔值:是非
boolean flag = true;
boolean flag = false;
- 引用类型(reference type)
类、接口、数组
整数拓展
进制 二进制0b 八进制0 十进制 十六进制0x
int i = 10;
int i2 = 010; //八进制0,i2=8
int i3 = 0x10; //十六进制0x 0-9 A-F,i3=16
浮点数拓展
BigDecimal 数学工具类
//float 有限 离散 舍入误差 大约 接近但不等于
float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d); //输出的布尔值为false
这是由于float和double的精度不一样,导致精度缺失
float d1 = 2323232323232323232323;
float d2 = d1 + 1;
System.out.println(d1==d2); //输出的布尔值为true
字符拓展
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);//强制转换
//所有的字符本质还是数字
//编码 Unicode 范围:U0000-UFFFF 表:97 = a 65 = A 2字节 65536
char c3 = '\u0061';
System.out.println(c3);//输出结果为a
转义字符
\t 制表符
\n 换行
布尔值扩展
boolean flag = true;
if (flag==true){
} //新手
if (flag){
} //老手
//Less is More 代码要精简易读