学习记录——整数、浮点数、字符、转义字符、布尔值的扩展
作者:互联网
public class Demo003{
public static void main (String[] args){
//*************************我是分割线*******************************//
System.out.println("\n//*************************我是分割线*******************************//\n");
//整数拓展:进制 二进制0b 十进制 八进制0 十六进制0x
//在十进制为十时,其他进制为满的情况
int num0 = 10; //十进制
int num1 = 0b10; //二进制0b
int num2 = 010; //八进制0
int num3 = 0x10; //十六进制0x
System.out.println(num0); //num0 = 10
System.out.println(num1); //num1 = 2
System.out.println(num2); //num2 = 8
System.out.println(num3); //num3 = 16
//*************************我是分割线*******************************//
System.out.println("\n//*************************我是分割线*******************************//\n");
//浮点型拓展 //float(浮点型变量); //double(长浮点型变量);
//银行业务怎么表示钱多少?
//千万不能使用float\double去计算现实中数学问题,如果需要请使用BigDceimal的数学工具类进行运算比较
/*
原因:精度有限:浮点数只能有限的表达字长,如果超过将进行舍入计算;
离散:舍入误差、会对值进行舍入导致有误差,结果是接近但不等于的大约数并非精确值;
注意事项:最好完全避免使用浮点型进行比较;
注意事项:最好完全避免使用浮点型进行比较;
注意事项:最好完全避免使用浮点型进行比较。
*/
//错例:(数值相等,判断结果为否);
//数值非同一类型。所以判断为假。
float numa = 0.1f;
double numb = 1.0f / 10;
System.out.println(numa); //numb = 0.1
System.out.println(numb); //numb = 0.1
System.out.println(numa==numb); //判断为假
//错例:(数值不相等,判断结果为真);
//超过浮点计算进度,舍入计算后大约数为相同所以判断为真。
float numc = 122312132331f;
float numd = numc + 1;
System.out.println(numc); //numb = 1.22312131E11
System.out.println(numd); //numb = 1.22312131E11
System.out.println(numc==numd); //判断为真
//*************************我是分割线*******************************//
System.out.println("\n//*************************我是分割线*******************************//\n");
//字符型拓展
char name0 = 'a';
char name1 = '中';
System.out.println(name0); //name0 = a
System.out.println((int)name0); //强制转换为整数型:97(UTF-8字符编码,前128字符与ASCII一样)
System.out.println(name1); //name0 = 中
System.out.println((int)name1); //强制转换为整数型:20013(UTF-8字符编码,前128字符与ASCII一样)
//所有的字符本质上都是数字;
//编码Unicode表:2字节 = 2的16次方 = 65535。 输入范围十六进制:U0000 -- UFFFF
char name3 = '\u0061'; //十六进制:61 == 十进制:97 == 'a'
System.out.println(name3);
//*************************我是分割线*******************************//
System.out.println("\n//*************************我是分割线*******************************//\n");
//转义字符
// \t:水平制表(HT) (跳到下一个TAB位置)
System.out.println("Hello\tWorld");
// \n:换行(LF) ,将当前位置移到下一行开头
System.out.println("Hello\nWorld");
// \.....
//*************************我是分割线*******************************//
System.out.println("\n//*************************我是分割线*******************************//\n");
//布尔值扩展
Boolean flag = true;
if ( flag == true){} //萌新程序员(比如我)
if (flag){} //老手程序员
//以上第一等效于第二,不写比较默认为true
//Less is More !!! 代码精简易读
}
}
标签:布尔值,浮点数,System,浮点,转义字符,numb,println,分割线,out 来源: https://blog.csdn.net/weixin_42140017/article/details/113956076