强类型语言
Java和是强类型语言,安全性高
基本类型(primitive type)
整数:
// 0b(二进制) 0(八进制)0x(十六进制)
int number = 11; //4个字节
byte number2 = 22; //1个字节
short number3 = 33; //2个字节
long number4 = 44L; //8个字节
//-------------------------------------------------
JDK7新特性
int money = 10_0000_0000;
int money2 = 20;
long money3 = money*money2; //在计算时就发生了溢出
long money3 = money*((long)money2); //在计算时加上强制类型转换
System.out.println(money3);
//结果为:溢出数
浮点数:
float num1 = 1.2F //4个字节
double num2 = 3.1415926; //8个字节
// 浮点数 有 **舍入误差** 避免有浮点数进入比较
float f1 = 23423425.234f;
float f2 = f1+1;
System.out.println(f1==f2); //结果为true
布尔值:
boolean flag = true | false; //1bit(位)true(1) | false(0)
if(flag==true){}
if(flag){}//会直接判断是否是0
银行业务要用 数学工具类 BigDecimal
引用类型(reference type)
包装类
类型转换 (byte,short,char,—>int,long—>float,double)
-
类型转换注意点
- 自动类型转换(底到高)
float a = 1.24;
double b = a;
//自动完成
- 强制类型转换(高到底)
int a = 128;
byte b = (byte)a; //内存溢出 Byte最大存储127
不能对布尔值进行转换,不内把对象类型转换成不相干的类型,转换存在内存溢出,和精度问题