首页 > 其他 > 详细

02.强制类型转化

时间:2021-05-15 12:17:27      阅读:14      评论:0      收藏:0      [点我收藏+]

数据类型转化

小的数据类型可以转化为大的数据类型,自动类型转化

class demn{
    public static void main(String[] args){
        byte b = 11;//一个字节
        short s = b;//2个字节
        int i = s;//4个字节
        long l = i;//8个字节
        System.out.println(l);
    }
}

大的数据类型转化为小的数据类型,强制类型转化,否则丢失精度

强制类型转化的格式:
小数据类型 变量名 = (小数据类型)大数据类型

class demn{
    public static void main(String[] args){
        int i = 128;
        byte b = (byte) i;
        Syetem.out.println(b);//-128,负数是通过补码的形式存储的,先通过补码转化为原码,再求范围
        System.out.println(Integer.toBinaryString(-7));
        
        byte b1 = 1;
        byte b2 = 2;
        byte b3 = b1 + b2;//丢失精度
        byte b3 = (byte)(b1 + b2);
        System.out.println()
            
        System.out.println(‘a‘ + 1);
        
        int i = 10;
        long l = 20;
        i = (int)(i + l);
        System.out.println(i);
        
        byte b = 10;//一个整数没有加任何标识的时候,默认是int类型的数据
        System.out.println(b);//不报错
        //10是一个常量,编译器在编译的时候能够确认常量的值,java编译器会检测到10并没有超出byte的范围,所以允许赋值
        
        int i = 10;
        byte c = i;
        System.out.println(b);//java编译器在编译的时候并不能确定变量所存储的值
    }
}

数据类型转化要注意的一个细节

? 1. 凡是byte,short,char数据类型的数据在运算的时候都会转化为int类型的数据再进行运算

? 2. 两个不同的数据类型在运算的时候结果取决于大的数据类型

02.强制类型转化

原文:https://www.cnblogs.com/best-you-articles-040612/p/14770729.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!