Java教程

java语法-数位进制

本文主要是介绍java语法-数位进制,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

数位进制

整数拓展

二进制、十进制、八进制、十六进制表达“10”怎么处理?

二进制加0b

十进制

八进制加0

十六进制加0x

举例:

int i = 10;
int i1 = 010; //八进制 0
int i2 = 0x10; // 十六进制0x  0~9 A~F
int i3 = 0b10;
System.out.println(i);
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);

浮点数拓展

银行业务怎么表述?

浮点数是有限的、离散的,所以是个大约数,只是接近但不等于。

所以最好不要用浮点数进行比较:

所以最好不要用浮点数进行比较:

所以最好不要用浮点数进行比较:

举例:

float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d); //false
System.out.println(f);
System.out.println(d);

float d1 = 232333334444443f;
float d2= d1 + 1;
System.out.println(d2);
System.out.println(d1==d2);

输出结果看,f=d=0.1 f应该等于d

d2=d1+1 d2不等于d1;

但是程序判断,f不等于d;d2等于d1,就是由这个造成的。

那对于精确数据的比较需要使用数学工具类:BigDecimal

字符拓展

所有的字符本质上还是数字,将字符强制转换成整型数字。

举例:

char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println(c2);
System.out.println((int)c1); //强制转换行
System.out.println((int)c2); //强制转换行
//编码: Unicode表  2字节 0 ~ 65536 Excel  2的16次方;

// Unicode表的范围:U0000 ~ UFFFF

字符和数字转换中有张Unicode表来作为“翻译表”

可以用以下指令来查看对应的输出:

char c3 = '\u0061';//转义字符
System.out.println(c3); //a

数位进制

整数拓展

二进制、十进制、八进制、十六进制表达“10”怎么处理?

二进制加0b

十进制

八进制加0

十六进制加0x

举例:

int i = 10;
int i1 = 010; //八进制 0
int i2 = 0x10; // 十六进制0x  0~9 A~F
int i3 = 0b10;
System.out.println(i);
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);

浮点数拓展

银行业务怎么表述?

浮点数是有限的、离散的,所以是个大约数,只是接近但不等于。

所以最好不要用浮点数进行比较:

所以最好不要用浮点数进行比较:

所以最好不要用浮点数进行比较:

举例:

float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d); //false
System.out.println(f);
System.out.println(d);

float d1 = 232333334444443f;
float d2= d1 + 1;
System.out.println(d2);
System.out.println(d1==d2);

输出结果看,f=d=0.1 f应该等于d

d2=d1+1 d2不等于d1;

但是程序判断,f不等于d;d2等于d1,就是由这个造成的。

那对于精确数据的比较需要使用数学工具类:BigDecimal

字符拓展

所有的字符本质上还是数字,将字符强制转换成整型数字。

举例:

char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println(c2);
System.out.println((int)c1); //强制转换行
System.out.println((int)c2); //强制转换行
//编码: Unicode表  2字节 0 ~ 65536 Excel  2的16次方;

// Unicode表的范围:U0000 ~ UFFFF

字符和数字转换中有张Unicode表来作为“翻译表”

可以用以下指令来查看对应的输出:

char c3 = '\u0061';//转义字符
System.out.println(c3); //a

常用的转义字符还有:

//转移字符
// \t 制表符
// \n 换行
// \r 回车
// \b 退格
System.out.println("Hello\tWorld");

布尔值扩展

boolean flag = true;

if (flag==true) {}和 if (flag) {}是一样的。
常用的转义字符还有:

//转移字符
// \t 制表符
// \n 换行
// \r 回车
// \b 退格
System.out.println("Hello\tWorld");

布尔值扩展

boolean flag = true;

if (flag==true) {}和 if (flag) {}是一样的。

这篇关于java语法-数位进制的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!