强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后使用
- 安全性高
- 速度慢
public class demo02 {
public static void main(String[] args) {
String a ="hello";
System.out.println(a);
}
}
public class demo02 {
public static void main(String[] args) {
String a =10; //这是错的,类型必须统一
System.out.println(a);
}
}
基本数据类型(Primitive Type)
-
数值类型
- 整数类型
- byte占一个字节范围:-128-127
- short占两个字节范围:-32768-32767
- int占四个字节范围:-2147483648-2147483647
- long占8个字节范围:-9223372036854775808-9223372036854775807
- 浮点类型
- float占4个字节
- double占8个字节
- 字符类型占两个字节
- 整数类型
-
boolean类型:占1位,它的值只有true和false两个
引用数据类型(Reference Type)
- 类
- 接口
- 数组
数据类型拓展
public class demo3 {
public static void main(String[] args) {
//整数拓展 进制 二进制0b 十进制 八进制0 十六进制0x
int i =10;
int i2 = 010; //八进制
int i3 = 0x10; // 十六进制
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
//==============================================
//浮点数拓展?银行业务钱怎么表示?
//BigDecimal 数学工具类
//==============================================
//float 有限 离散的 舍入误差 大约 接近但不等于
//double
// 最好完全避免使用浮点数进行比较
// 最好完全避免使用浮点数进行比较
// 最好完全避免使用浮点数进行比较
float f=0.1f;
double d=1.0/10;
System.out.println(d==f);//flase
System.out.println(d);
System.out.println(f);
float d1 = 2326565646f;
float d2=d1+1;
System.out.println(d2);
System.out.println(d1==d2);
//==============================================
//字符拓展?
//==============================================
char c1='a';
char c2='中';
System.out.println(c1);
System.out.println(c2);
System.out.println((int)c2);
System.out.println((int)c1);//强制类型转换
//所有的字符本质还是数字
//编码 Unicode 2字节 0-65536 Excel 2**16 = 65536
//U0000 UFFFF
char c3 = '\u0061';
System.out.println(c3);
//转义字符
// \t 制表符
// \n 换行符
System.out.println("hello\nworld");
//==============================================
//==============================================
//==============================================
String an= new String("hello world");
String bn = new String("hello world");
String cn;
cn = "hello world";
String dn;
dn = "hello world";
System.out.println(an==bn); //地址不同,开拓了新的地址
System.out.println(cn == dn);
boolean flag = true;
if(flag){}//老手
if(flag=true){} //新手
//代码要精简易读
}
}