java基础


public class Test {
public static final short STATIC_C = 10;

public static void main(String[] args) {
//java整数常量默认为int类型
//1.直接把一个较小的整数(在byte以及short范围内),系统自动把整数常量当成byte或者short类型处理
byte a = 100;
byte aa = 105;
//自动类型转换
// char
// ↓↓↓
//byte -->short-->int-->long-->float-->double
//自动提升原则(1)byte,short,char自动提升到int类型,提升原则(2)如果表达式中还有最高等级的操作数类型,则提升为最高操作数类型
//byte aaa = a + aa;//错误.a+aa是int类型.
//byte aaa = a + 5.0f;//最高类型是float
//byte aaa = a + 5.0f + 5.0d;//最高类型是double

//byte b = 300;//错误
short c = 1000;

short cc1 = STATIC_C - 5;//整数常量自动转换成short类型
//short cc2 = c - 5;//错误,5是int类型,c自动提升为表达式最高等级的操作数类型int(就是5啦),所以c-5是int类型
//short cc2 = c - 5.0f;//错误,5.0f是float类型,c自动提升为表达式最高等级的操作数类型float(就是5.0f啦),所以c-5是float类型
//short cc2 = c - 5.0;//错误,5.0是double类型,c自动提升为表达式最高等级的操作数类型double(就是5.0啦),所以c-5是dobule类型

//short d = 33333;//错误
//2.int范围的整数可以自动转换成long类型
long e = 9999999;
//3.超过int范围的整数赋值给long类型必须在整数常量后面加L或者l
//long f = 999999999999;//错误
long g = 999999999999L;
//4.八进制以0开头.十进制.十六进制以0x或者0X开头
int h = 010;
int i = 8;
int j = 0x33;

System.out.println(h);
System.out.println(i);
System.out.println(j);
//5.字符型四种表示方式:
//1)单引号
char k = '囧';
//2)转义符
char l = '\"';
//3)unicode值
char m = '\u3222';
//4)16位的无符号整数,范围在0-65535整数自动将该int整数当成char类型处理
char n = 33333;
System.out.println(k);
System.out.println(l);
System.out.println(m);
System.out.println(n);

//6.小数默认为dobule类型,赋值给float必须在小数后面加F或者f
//float o = 0.2;//错误
float p = 0.2f;
//二进制科学计数法表示浮点数,不完全精确
float q = 5.2334512f;
float r = 52334512E-7f;
System.out.println(q);//输出5.2334514
System.out.println(r);//输出5.2334514
//特殊浮点值,
//1)正无穷大,整数除以0会报错,正浮点数除以0才能得到正无穷
System.out.println(Float.POSITIVE_INFINITY);//Infinity
System.out.println(Double.POSITIVE_INFINITY);//Infinity
//System.out.println(5 / 0);//运行报错
System.out.println(5.0 / 0);//Infinity
System.out.println(100.0 / 0);//Infinity
System.out.println(5.0 / 0 == 100.0 / 0);//正无穷都相等

//2)负无穷大,整数除以0会报错,正浮点数除以0才能得到正无穷
System.out.println(Float.NEGATIVE_INFINITY);//-Infinity
System.out.println(Double.NEGATIVE_INFINITY);//-Infinity
//System.out.println(-5 / 0);//运行报错
System.out.println(-5.0 / 0);//-Infinity
System.out.println(-100.0 / 0);//-Infinity
System.out.println(-5.0 / 0 == -100.0 / 0);//负无穷都相等

//3)非数,0.0除以0.0或者对负数开根号得到非数,NAN不等于任何数值,也不等于NAN
System.out.println(Float.NaN);//NaN
System.out.println(Double.NaN);//NaN
System.out.println(0.0 / 0.0);//NaN
System.out.println(0.0 / 0.0 == Float.NaN);//NAN不等于任何数值,也不等于NAN
}
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值