这篇文章主要为大家展示了“Java基础之基本数据类型怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Java基础之基本数据类型怎么用”这篇文章吧。
主要扩展一下不同进制的整型
二进制、八进制、十进制、十六进制
* 二进制 : 0B(数字零+B) 0b(数字零+b)
* 八进制 :0(数字零开头)
* 十进制 :正常写就是十进制
* 十六进制 : 0X (数字零+X)0x (数字零+x) A-F 代表 10-15
/** * 进制 : * 二进制 : 0B(数字零+B) 0b(数字零+b) * 八进制 :0(数字零开头) * 十进制 :正常写就是十进制 * 十六进制 : 0X (数字零+X)0x (数字零+x) * A-F 代表 10-15 * */ int i2_1 = 0b10; // 二进制的 2 int i2_2 = 0B10; int i8 = 010; // 八进制的 8 int i10 = 10; // 十进制的 10 int i16_1 = 0X1B; // 十六进制的 16+11 = 27 int i16_2 = 0x1B; System.out.println("二进制:i2_1 = "+i2_1); System.out.println("二进制:i2_2 = "+i2_2); System.out.println("八进制:i8 = "+i8); System.out.println("十进制:i10 = "+i10); System.out.println("十六进制:i16_1 = "+i16_1); System.out.println("十六进制:i16_2 = "+i16_2);
二进制:i2_1 = 2
二进制:i2_2 = 2
八进制:i8 = 8
十进制:i10 = 10
十六进制:i16_1 = 27
十六进制:i16_2 = 27
【特别注意】程序中尽量不要使用浮点型的数据进行比较,否则可能会出现非常严重的问题
浮点数的诡异比较 1. float 和 double 的数据不可直接进行比较 : float类型:有限的离散数据,舍入误差,所以不等于double同数据 2. float 和 float 的数据比较不可直接使用 == 【结论】 : 当涉及到 浮点数的比较的时候: 思路一 : 做差 小于某个数 思路二 : 使用 大数类型 BigDecimal
/** * 浮点数的诡异比较 * 1. float 和 double 的数据不可直接进行比较 : * float类型:有限的离散数据,舍入误差,所以不等于double同数据 * 2. float 和 float 的数据比较不可直接使用 == * * 【结论】 : 当涉及到 浮点数的比较的时候: * 思路一 : 做差 小于某个数 * 思路二 : 使用 大数类型 BigDecimal */ float f1 = 1.56f; double f2 = 1.56; System.out.println("f1 = "+f1); System.out.println("f2 = "+f2); System.out.println(" f1 是否与 f2 的值相等 : "+(f1 == f2)); float d1 = 1231238142342342342909f; float d2 = d1 +1; System.out.println("d1 = "+d1); System.out.println("d2 = "+d2); System.out.println("d1 是否与 d2 的值相等 : "+(d1 == d2));
f1 = 1.56
f2 = 1.56
f1 是否与 f2 的值相等 : false
d1 = 1.2312381E21
d2 = 1.2312381E21
d1 是否与 d2 的值相等 : true
字符类型的数据,本质上是一个数字
字符对应的是Unicode 编码表中数字
可以直接写 U0000 UFFFF (U后跟着的是十六进制的数)
【特殊的字符】 : 转义字符***
char c1 = 'a'; char c2 = '国'; char c3 = '\u0065'; // 十六进制 65 对应 unicode 编码表中的 小写字母 e System.out.println("c1 = " +c1+" ; (int)c1 = "+(int)c1); System.out.println("c2 = " +c2+" ; (int)c2 = "+(int)c2); System.out.println("c3 = "+c3);
c1 = a ; (int)c1 = 97
c2 = 国 ; (int)c2 = 22269
c3 = e
【注意】 字符串String 不属于基本数据类型!
此处的比较主要是体会一下值 的比较
和对象地址的比较
String s1 = new String("Hello World!"); String s2 = new String("Hello World!"); String s3 = "Hello World!"; String s4 = "Hello World!"; System.out.println("s1 是否与 s2 相等 ? : "+(s1 == s2)); // false 对象的比较 System.out.println("s3 是否与 s4 相等 ? : "+(s3 == s4)); // true 值的比较
s1 是否与 s2 相等 ? : false
s3 是否与 s4 相等 ? : true
以上是“Java基础之基本数据类型怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。