数据类型及类型转换

数据类型拓展.

0.大小范围

图片转自blibli-狂神说Java
在这里插入图片描述

1. 整数(int)

  1. 八进制 0数字
  2. 十六进制 0x数字
  3. 十进制 数字

2.浮点数(float , double)

浮点类型使用须知格式
float大约性,有效,离散,有舍入误差float i = 16f;
double较为精确double i = 16.0;
  • 两者不相等

  • 银行数据都采用 BigDecimal类工具

3.字符(char)

  1. char c1 = ‘字’;
  2. char c2 = ‘符’;
  3. (int)c1
    • 强制转换
  • 格式

  • 要转成的类型 变量名 = (原类型)变量值;

    • 并非所有类型都能使用
  • 所有字符本质都是数字

  • 编码 Unicode 2字节 0-65536 相当于Excel 2 16 = 65536

    1. char c3 = ‘\u编码序列’;
    2. U0000 - UFFFF
    3. 16进制
  1. 转义字符

    • \t 制表符 Tab

    • \n 换行

      System.out.println("Hello\nWrold");
      System.out.println("Hello\tWrold");
      ......
      

截图

布尔值(boolean)

  1. boolean flag = true;
  2. 有 true 和 false 两个值
boolean flag = true;
if(flag==true){}
if(flag){}//两种含义相同

类型转换

  • 低到高
 int i = 128;
        byte b =(byte) i;//内存溢出(超出范围)
        double du = i;


        //强制转换 (类型)变量名
        //自动转换  低---高
        System.out.println(i);
        System.out.println(b);
        /* 注意点
        * 1.不能转换布尔值··
        * 2.不能把对象类型转换为不相干的类
        * 3.高---低 强制转换
        * 4.注意内存溢出或精度问题
        *
        * */
        System.out.println((int)23.7);
        System.out.println((int)-45.89);

        System.out.println("==============================");
        char c = 'a';
        int d = c+1;
        System.out.println(d);
        System.out.println((char)d);

  • 注意点

     //操作比较大的数时,注意溢出问题
            //数字之间可以下划线隔开
            int money = 10_0000_0000;
            int years = 20;
            int total = money*years;//-1474836480,计算是已经溢出
            long total1= money*years;//转换前就溢出了
    
            long total2=money*((long)years);
            System.out.println(total2);
    
    
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值