DAY01 JAVA笔记
编译型、解释型
举例:翻译一本中国书给外国人看 编译型:一个人全篇翻译给外国人看,书有改动,重新翻译
解释型: 邀请一个翻译官把书一句一句翻译给外国人看
java既是翻译性语言也是解释性语言 运行过程:源程序(*.java文件)-->java编译器-->字节码( *.class文件)-->类装载器-->字节码校验器-->解释器-->操作系统平台
数据类型
1。基本数据类型:整形,浮点型,字符型,布尔型 2。引用数据类型:接口、数组、类
整型:byte 一字节 short 2字节 int 4字节 long8字节: 1212L 浮点型: float4字节:0.21F double8字节:0.212D 浮点型一个字节:char a = 'A' 或'彭'
位(bit)计算机内部存储的最小单位:11001100 八位二进制数
字节(byte) 计算机数据存储的基本单位,习惯上用大写B表示
1 B(一字节,byte) = 8bit(位)
字符是指计算机中使用的字母、字、数字和符号 1B = 8bit 1KB= 1024B 1MB = 1024 KB 1G = 1024MB 1TB = 1024GB
数据类型扩展及面试题讲解
二进制 八进制:01开头 十六进制:0x开头 0~9 A~F
浮点数扩展? 银行业务怎么表示? 钱
BigDecimal 数学工具类
//float 有限 离散 舍入误差 大约 接近但不等于
//double
//最好完全避免使用浮点数进行比较 最好完全避免使用浮点数进行比较 最好完全避免使用浮点数进行比较
float a = 0.1f; float b = 0.1; sout(a==b)-->false
float c1= 232323232323232321f; float c2 = c1+1; sout(c1==c2)-->true;
字符拓展?
char a = 'A'; char b = '中'
sout(a,b) sout((int)a) sout((int)b) 强制转换
//所有字符本质还是数字 编码 unicode 表(97 = a,65 = A)2 字节 0-65536 EXCEL 2 16 = 65536
U0000 UFFFF
转义字符
char c3 = '\u0061' sout(c3) -->a
制表符\t 换行\n
对象 内存分析
String sa = new String("hello");
String sb = new String("hello");
String sc = "hello";
String sd = "hello";
sout(sa==sb);-->false
sout(sc==sd);-->true
布尔值拓展
boolean flag = true;
if(flag==true)等价于if(flag) 代码要精简易读