整数扩展
二进制 0b开头
十进制
八进制 0开头
十六进制 0x开头 09 AF
package com.vis_yang.demo; public class Demo02 { public static void main(String[] args) { int num = 0b10;//二进制数 1*2^1+0*2^0=2 int num1 = 10;//十进制 1*10^1+0*10^0=10 int num2 = 010;//八进制 1*8^1+0*8^0=8 int num3 = 0x10;//十六进制 1*16^1+0*16^0=16 System.out.println(num); System.out.println(num1); System.out.println(num2); System.out.println(num3); } }
运行结果:
浮点数扩展
银行业务如何表示?
试试看就知道了:
package com.vis_yang.demo; public class Demo03 { public static void main(String[] args) { //浮点数 有限 离散 会舍入误差(大约:接近但不等于) 因此不适合在银行业务使用浮点数编写代码,我们会使用 BigDecimal 数学工具类 float f1 = 0.1f; //0.1 double f2 = 1.0 / 10;//0.1 System.out.println(f1); System.out.println(f2); System.out.println(f1 == f2);//却是输出false } }
运行结果:
字符扩展
所有的字符本质上还是数字 Unicode编码
Unicode是一个编码方案,Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。Unicode 编码共有三种具体实现,分别为utf-8,utf-16,utf-32,其中utf-8占用一到四个字节,utf-16占用二或四个字节,utf-32占用四个字节。Unicode 码在全球范围的信息交换领域均有广泛的应用。
布尔型扩展
package com.vis_yang.demo; public class Demo04 { public static void main(String[] args) { boolean flag=true; if(flag==true){//新手 System.out.println(flag); } if (flag){//老手 System.out.println(flag); //实质两种写法一样 } } }
代码要精简易读
运行结果: