Java基础语法的拓展
重点:此拓展为面试或笔试考到的一些基础知识
整数拓展
- 我们进制主要分为四个进制:
- 二进制(0b开头)
- 八进制(0开头)
- 十进制(现在最常用的进制,直接输入就行)
- 十六进制(0x开头) 0~9 A~F
- 下面进行一些简单操作
public class Demo04 {
public static void main(String[] args) {
//整数拓展 二进制0b 八进制0 十进制 十六进制0x
int i1=10;//十进制
int i2=0b10;//二进制
int i3=010;//八进制
int i4=0x10;//十六进制 0~9 A~F
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);
}
}
- 运行后显示-------->
浮点数拓展
- 银行金融会考到的题:银行业务怎么表示?钱
- 这时如果我们用浮点数来表示,则可能会出现问题
- 这时候要用到的工具是BigDecimal 一种数学工具(以后再拓展)
- 浮点数是有限的,离散的,有舍入误差的
- 最好完全避免用浮点数进行比较
- 下面进行一些简单的操作
public class Demo05 {
public static void main(String[] args) {
//浮点数拓展 银行金融面试题:银行业务怎么表示?钱
//BigDecimal 数学工具类
//float double 浮点数是有限的,离散的,有舍入误差的;
//最好完全避免用浮点数进行比较
float a=0.1f;
double b=1.0/10;
System.out.println(a==b);
System.out.println("===============================================");
float c=21685165456151351.65f;
double d=c+1;
System.out.println(c==d);
System.out.println("===============================================");
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
}
}
- 运行后显示-------->
字符拓展
- 所有字符的本质还是数字
- 字符经过(int)能强制转换成数字
- 字符转换成数字就要涉及到编码表
- 常用的编码表:Unicode,占两个字节(例如97=a 65=A)
- 例如U0000 UFFFF等编码表示
- 转义字符
- 例如:\t是制表符
- 例如:\n是换行
- 还有很多转义字符,不做过多说明,大家可以上网去了解一下
- 还有一些字符串的拓展关于new String与String的
- 涉及到对象的时候会学到,暂不做过多说明
- 从内存分析
- 下面进行一些简单操作
public class Demo06 {
public static void main(String[] args) {
//字符拓展
//所有字符的本质还是数字
//涉及到编码表 常用的编码表:Unicode,占两个字节
//例如:97=a 65=A
//例如我们早期使用的Excel的范围为0~65536(2的16次方)
char a1='a';
char a2='A';
System.out.println(a1);
System.out.println(a2);
System.out.println((int)a1);//强制转换
System.out.println((int)a2);//强制转换
System.out.println("==========================================================");
//==========================================================================
//U0000 UFFFF
//Unicode编码的表示
char a3='\u0069';
System.out.println(a3);
System.out.println("==========================================================");
//===========================================================================
//转义字符
// \t 制表符
// \n 换行
//还有很多转义字符,不做过多说明
System.out.println("Hello\tWorld");
System.out.println("Hello\nWorld");
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);
//学到对象的时候 从内存分析再解析
}
}
- 运行后显示-------->
布尔值拓展
- 关于if的语法
- if(flag==TRUE){}与if(flag){}相同
- if(flag==TRUE){}一般在新手时期,后期一般不会出现
- if(flag){}为老手输入
- Less is More 代码要精简易读
- 下面进行一些简单操作
public class Demo07 {
public static void main(String[] args) {
//布尔值的拓展
boolean flag=true;
if (flag==true){}//新手
if (flga){}//老手
//Less is More 代码要精简易读
}
}