目录
标识符和关键字
关键字不能做类名
public、void、static、import
标识符是类名、变量名、方法名
标识符注意点
-
所有标识符只能用字母,美元符($)、下划线(_)开始
-
首字符之后只能用字母,美元符($)、下划线(_)或数字的组合
-
不能用关键字做方法名或变量名
-
标识符大小写敏感
数据类型
java是强类型语言:
变量使用要严格符合规定,所有变量要先定义再使用。
java的数据类型分两大类:
基本类型(primitive type):
-
数值类型:
-
整数类型:
-
byte 1字节 (-128-127)
-
short 2字节(-32768-32767)
-
int 4字节(-2147483648-2147483647)
-
long 8字节(-9223372036854775808-9223372036854775807)
long定义的数字后要加”L“
如:
long a=10L;
-
-
浮点类型:
-
float 4字节
float定义的数字后要加”F“
如:
float a=10.1F;
-
double 8字节
-
字符类型:
-
char 2字节
一个字
char name='A';
-
-
-
-
boolean类型:占1位 ,其值只有true和false
(1字节=8位)
引用类型(reference type):
-
类
-
接口
-
数组
位、字节、字符
-
位(bit):是计算机内部数据存储的最小单位
-
字节(btye):是计算机中数据处理的基本单位
-
1B(byte)=8bit
-
字符:是指计算机中使用的字母、数字、字和符号
整数拓展
2进制、10进制、8进制、16进制
2进制 0b、10进制、8进制 0、16进制 0x
浮点数拓展
银行业务怎么表示钱?
BigDecimal 数学工具类
float
少用浮点数进行比较
double
float f=0.1f;
double d=0.1;
f!=d(因为float和double 类型的精度不一样)
float d1=12345623213123123f;
float d2=d1+1;
System.out.println(d1);
System.out.println(d2);
System.out.println(d1==d2);
1.23456236E16 1.23456236E16 true
字符串拓展
面试小题
char c1='a';
char c2='中';
System.out.println(c1);//a
System.out.println((int)c1);//强制转换 97
System.out.println(c2);//中
System.out.println((int)c2);//20013
//所有字符本质还是数字
//编码 Unicode 表:97=a 65=A 2字节 65536 Excel 2x16=65536
//U0000 UFFFF
char c3; // *****“\ u **** 是Unicode 转义”
c3 = '\u0061';
System.out.println(c3);//a
//转义字符
// \t 制表符
// \n 换行
//.....................
//所有字符本质还是数字 //编码 Unicode 表:97=a 65=A 2字节 65536 Excel 2x16=65536 //U0000 UFFFF
#
String sa=new String("Hello world");
String sb=new String("Hello world");
System.out.println(sa==sb);//false
String sc="Hello world";
String sd="Hello world";
System.out.println(sc==sd);//ture
//对象 从内存分析
//布尔值扩展
boolean flag=true;
if(flag==true){}//新手
if(flag){} //老手
//精简
System.out.println(sa==sb);//false sa和sb开辟的地址不同
System.out.println(sc==sd);//ture sc和sd 都是字符串