- 数据类型
- 强类型语言
- 弱类型语言
- Java的数据类型分为两大类
- 基本数据类型 :数值类型 boolean类型
- 引用类型: 类 接口 数组
- 数值类型:整数类型 浮点类型 字符型
- boolean类型:占1位其他数值只有true和false两个
- 什么是字节
-
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
public static void main(String[] args) { int a = 12 ; System.out.println(a); }
-
同比于强类型语言 并没有很严格的规范(我们在定义变量的时候不需要自己定义类型 而解释器会帮我们指向类型)比如 python、js都是属于弱类型语言
a = 12 print(a) print(type(a))
-
基本类型(primitive type)
-
引用类型(reference type)
- 类:字符串string
整数类型:
-
byte占1个字节范围:-128-127
-
short占2个字节范围:-32768-32767
-
int占4个字节范围:-2147483648-2147483647
-
long占8个字节范围:-9223372036854775808-9223372036854775807
浮点类型:
- float占4个字节
- double占8个字节
字符型:
- char占2个字节
//八大基本数据类型
//整数
int num1 = 10;//最常用byte num2 = 20;
short num3 = 30;
long num4 = 30L; //Long类型要在数字后面加个L
//小数:浮点数
float num5 = 50.1F; //fLoat类型要在数字后面加个F
// double num6 = 3.141592653589793238462643;
//字符
char name = '国'; //字符类型char占2个字节 所以中文只能写一个
//字符串string不是关键字,属于 引用数据类型 中 的类
// String namea ="王腾";
//布尔值:是非
boolean flag = true;
//booLean fLag = false;
什么是字节
-
位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。
-
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示,
-
1B (byte,字节) = 8bit(位)
-
字符:是指计算机中使用的字母、数字、字和符号
-
1bit表示1位,
-
1Byte表示一个字节1B=8b
-
1024B=1KB
-
1024KB=1M
-
1024M=1G.
//整数拓展: 进制 二进制ob 十进制 八进制0 十六进制0x
int i = 10;
int i2 = 010; //八进制0
int i3 = 0x10; //十六进制0x 0~9 A~F 16
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
System.out.println( "====================================");
//=================================================================
//浮点数拓展? 银行业务怎么表示﹖ 钱
//BigDecimal 数学工具类
//=====================================
//float 4个字节 有限 离散 舍入误差 大约 接近但不等于
//double 8个字节
//最好完全使用浮点数进行比较
//最好完全使用浮点数进行比较
//最好完全使用浮点数进行比较
float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //false
float d1 = 23131312312312313f;
float d2 = d1 + 1;
System.out.println(d1==d2);//true
System.out.println( "====================================");
//字符拓展?
//system.out.println("=====================================");
char c1 = 'A';
char c2 ='中';
System.out.println(c1);
System.out.println((int)c1);//强制换行
System.out.println(c2);
System.out.println((int)c2); //强制换行
//所有的字符本质还是数字
//编码 unicode 表:(97 = a 65 =A) 2字节 0 - 65536 Excel 2 16 = 65536
// U000 UFFFF 区间范围
char c3 = 'u0061';
System.out.println(c3); //a
//转义字符
// t制表符
// n换行
// .....
System.out.println("He1lonworld" );
System.out.println( "=========================== ");
String sa = new String( "hello world");
String sb = new String( "hello world");
System.out.println( sa==sb);
String sc = "hello world" ;
String sd = "hello world";
System.out.println(sc==sd);
//对象从内存分析
//布尔值扩展
boolean flag = true;
if (flag==true){}//新手
if (flag){}//老手
//Less is More! 代码要精简易读



