Day03
整数拓展
import com.sun.org.apache.xpath.internal.objects.XString; public class Demo02 { public static void main(String[] args) { String a="hello"; int num = 10; System.out.println(a); System.out.println(num); //八大基本数据类型 int numl = 10; byte num2 = 122; long num3 = 30L;//long类型在数字后面加L short num4 = 13; //小数;浮点数 float num5 = 50.1F;//float类型后面要加F double num6 = 3.1415926; //字符 char name = 'd'; //字符串,string不是关键字,是类 String namea = "中国"; //布尔值:是非 boolean flag = true; //boolean flag = folse; } }
浮点数拓展
银行业务怎么表示?钱
BigDecimal 数学工具类
float 有限 离散 舍入误差 大约 接近但不等于
最好完全避免使用浮点数进行比较
字符拓展
所有字符的本质还是数字
a = 97 A = 65
转义字符
\t 制表符
\n 换行
......
拓展
从内存分析
布尔型拓展
类型转换
内存溢出
精度问题
强制转换 (类型)变量名 高---->低
自动转换 低---->高
注意点:
1. 不能对布尔型进行转换 2. 不能把对象类型转换为不相干类型 3. 在把高容量转换到低容量的时候,强制转换 4. 转换的时候可能存在内存溢出或精度问题
public class Demo03 { public static void main(String[] args) { int i =10; int i1 = 010;//八进制 int i2 = 0x10;//十六进制 int i3 = 0b10;//二进制 System.out.println(i); System.out.println(i1); System.out.println(i2); System.out.println(i3); System.out.println("================================="); float f = 0.1F; double b = 0.1; System.out.println(f==b); System.out.println(f); System.out.println(b); System.out.println("================================="); float b1 = 1212121212121212F; float b2 = b1+1; System.out.println(b1==b2); System.out.println("================================="); char c1 = 'a'; char c2 = '中'; System.out.println(c1); System.out.println((int)c1); System.out.println(c2); System.out.println((int)c2); System.out.println("================================="); int c4 = 128; byte b3 = (byte)c4; System.out.println(b3); } }