第三天

数据类型

public class Demo01 {
  public static void main(String[] args) {
      //八大数据类型

      //整型
      byte num1=10;
      short num2=20;
      int num3=30;
      long num4=40L;     /*为什么在所能表示的位数里 整数部分要减一??*/

      //浮点型
      float num5=5.1F; /*浮点型后要加大写的F*/
      double num6=3.6;

      //字符型
      char num7='李';
      //string name ="李科" string是类,不是关键字

      //布尔型
      boolean num8=true;
      boolean num9=false;
      //boolean只有true和alse


  }
}

基本类型:byte 二进制位数:8 包装类:java.lang.Byte 最小值:Byte.MIN_VALUE=-128 最大值:Byte.MAX_VALUE=127

基本类型:short 二进制位数:16 包装类:java.lang.Short 最小值:Short.MIN_VALUE=-32768 最大值:Short.MAX_VALUE=32767

基本类型:int 二进制位数:32 包装类:java.lang.Integer 最小值:Integer.MIN_VALUE=-2147483648 最大值:Integer.MAX_VALUE=2147483647

基本类型:long 二进制位数:64 包装类:java.lang.Long 最小值:Long.MIN_VALUE=-9223372036854775808 最大值:Long.MAX_VALUE=9223372036854775807

基本类型:float 二进制位数:32 /单精度/ 包装类:java.lang.Float 最小值:Float.MIN_VALUE=1.4E-45 最大值:Float.MAX_VALUE=3.4028235E38

基本类型:double 二进制位数:64 双精度 包装类:java.lang.Double 最小值:Double.MIN_VALUE=4.9E-324 最大值:Double.MAX_VALUE=1.7976931348623157E308

基本类型:char 二进制位数:16 包装类:java.lang.Character 最小值:Character.MIN_VALUE=0 最大值:Character.MAX_VALUE=65535

 

public class Demo02 {
public static void main(String[] args) {
//整数拓展: 进制 二进制0b 八进制0 十进制 十六进制0x
int a = 0b10; //二进制
int a2 = 010; //八进制
int a3 = 10; //十进制
int a4 = 0x10; //十六进制 0~9 A~F
System.out.println(a);
System.out.println(a2);
System.out.println(a3);
System.out.println(a4);

System.out.println("================================================");
//=======================================
//浮点型 银行的业务怎么表示? 钱
//bigDecimal(大数类型) 数学工具类
//=======================================
// float和double 是有问题的

float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);
System.out.println(f);
System.out.println(d);

float d1=233332323f;
float d2 = d1+1;
System.out.println(d1==d2);
//浮点数所能表示的数是有限的 离散的 存在舍入误差 结果是大约数(接近但不等于)
//最好完全避免使用浮点数直接进行比较
// 最好完全避免使用浮点数直接进行比较
//最好完全避免使用浮点数直接进行比较

System.out.println("================================================");

char c1 = 'a';
char c2 = '中';
System.out.println((int)c1);
System.out.println((int)c2);
//强制转换可以把字符变成数字 所有的字符本质还是数字
// 编码 Unicode 2字节 65536 Excel 65536
//97 = a 65 =A
// u000 uFFF

char c3='\u0061';
System.out.println(c3);

//转义字符
// \t (制表符)
// \n 换行
//....
System.out.println("Hello\tWorld");
System.out.println("Hello\nWorld");

//
String sa = new String("Hello world");
String sb = new String("Hello world");
System.out.println(sa==sb);

String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);
//对象 从内存分析

//布尔值扩展
boolean flag = true;
if (flag==true){}//新手
if (flag){}//老手
//Less is More 代码要精简易读

 

 


}
}

posted @ 2020-09-26 22:52  小刺猬要学习  阅读(80)  评论(0)    收藏  举报