java数据类型扩展
java数据类型的扩展
小结
-
整数数据类型的扩展(不同进制的表示)
-
浮点数数据类型的扩展{
结论:
- 浮点数不能用于比较
- 如果需要使用,使用math工具类BigDecimal
}
-
字符数据类型扩展{
字符数据类型扩展
- 结论:
- 所有的字符本质还是数字
- 通过Unicode编码
- 例:97:a
- 2字节:0 - 2^16(65536)
}
-
转义字符的扩展
-
字符串的扩展(用String对象创建的是从内存分析的)
-
布尔值的扩展
整数数据类型的扩展
public class demo1 {
public static void main(String[] args) {
// 整数的扩展:
// 进制的写法:
// 二进制,以0b开头
int num1 = 0b10;
// 八进制,以0开头
int num2 = 010;
// 十进制,正常写
int num3 = 10;
// 十六进制,以0x开头
int num4 = 0x10;
System.out.println("二进制10:"+num1);
System.out.println("八进制10:"+num2);
System.out.println("十进制10:"+num3);
System.out.println("十六进制10:"+num4);
}
}
浮点数数据类型的扩展
/*
* 浮点数数据类型扩展
* 结论:
* 浮点数不能用于比较
* 如果需要使用,使用math工具类BigDecimal
* import java.math.BigDecimal;
* */
public class demo2 {
public static void main(String[] args) {
// 浮点数0.1
float f = (float) 0.1;
// 浮点数0.1
double d = 0.1;
// 数值相等的浮点数却不相等
//输出为false
System.out.println(f == d);
// 随便一个浮点数
float f1 = 213123123132132132f;
// 将f1+1赋给d1
double d1 = f1 + 1;
// 数值不相同的两个浮点数却相等
System.out.println(f1 == d1);
}
}
字符数据类型扩展
/*
* 字符数据类型扩展
* 结论:
* 所有的字符本质还是数字
* 通过Unicode编码
* 例:97:a
* 2字节:0 - 2^16(65536)
* */
public class demo3 {
public static void main(String[] args) {
char c1 = 'a';
char c2 = '人';
// 输出c1
System.out.println(c1);
// 将c1强制转换为int输出
System.out.println((int)c1);
// 输出c2
System.out.println(c2);
// 将c2强制转换为int输出
System.out.println((int)c2);
/*
* 利用转义字符定义(底层)
* 其中0061为十六进制
* 也就是十进制的97
* 此时c3为'a'
* */
char c3 = '\u0061';
System.out.println(c3);
}
}
转义字符扩展
作者:SummerChill
字符串扩展
/*
* 字符串的扩展
* 结论:
* 用String对象创建的是从内存分析的
* */
public class demo4 {
public static void main(String[] args) {
// 使用new String()对象定义字符串
String s1 = new String("hello");
String s2 = new String("hello");
// 直接定义字符串
String S1 = "hello";
String S2 = "hello";
// 分别比较
// 使用对象创建的是不同的
System.out.println(s1 == s2);
// 直接创建的是相同的
System.out.println(S1 == S2);
}
}
布尔值的扩展
public class demo5 {
public static void main(String[] args) {
// 定义布尔值
boolean b1 = true;
boolean b2 = false;
// 等价
if (b1==true) {}
if (b1) {}
// 等价
if (b2 == true){}
if (b2 != false) {}
if (!b2) {}
}
}
本博客为自己根据狂神老师总结。 如果文中有什么错误,欢迎指出。以免更多的人被误导。