java数据类型拓展
#首先是课堂代码的个人整理
public class data_type_extension {
public static void main(String[] args) {
/*
* 整数拓展:进制 二进制:0b;八进制:0;十六进制:0x;
* */
int a = 10;
int b = 0b10;
int c = 010;
int d = 0x10;
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println("===============================");
/*
* 浮点数拓展:银行业务
* 误差解决:BigDecimal 数学工具类
* float 有限 离散 舍入误差 大约 接近但不等于
* double
* 最好完全不使用浮点数进行比较
* 最好完全不使用浮点数进行比较
* 最好完全不使用浮点数进行比较
* */
float f = 0.1f;
double g = 1.0/10;//0.1
System.out.println(f==g);//false
float d1 = 2333333333333333333333333333f;
float d2 = d1 + 1;
System.out.println(d1==d2);//true
System.out.println("===============================");
/*
* 字符拓展
* */
char q1 = 's';
char q2 = '学';
System.out.println(q1);
System.out.println(q2);
System.out.println((int)q1);//强制转换
System.out.println((int)q2);//强制转换
// 所有的字符本质还是数字
// 编码 Unicode 表:97 = a; 65 = A; 0~65536 Excel 2^16=65536
char q3 = '\u0061';// Unicode编码
System.out.println(q3);//a
System.out.println("===============================");
}
}
###下面是上述代码的运行结果
###附上手打的转义字符小表格(加深印象)
转义字符 | 意义 | ASCII码值(十进制) |
---|---|---|
\a | 响铃(BEL) | 007 |
\b | 退格(BS),将当前位置移到前一列 | 008 |
\f | 换页(FF),将当前位置移到下页开头 | 012 |
\n | 换行(LF),将当前位置移到下一行开头 | 010 |
\r | 回车(CR),将当前位置移到本行开头 | 013 |
\t | 水平制表(HT),跳到下一个Tab位置 | 009 |
\v | 垂直制表(VT) | 011 |
\|代表一个反斜线字符’’ | 092 | |
’ | 代表一个单引号字符 | 039 |
" | 代表一个双引号字符 | 034 |
\0 | 空字符(NULL) | 000 |
\ddd | 1到3位八进制数所代表的任意字符 | 三位八进制 |
\xhh | 1到2位十六进制所代表的的任意字符 | 二位十六进制 |