• JAVA 0基础 数据类型 整数型


    /*
    关于Java中的整数型
    数据类型             占用空间          默认值          取值范围
    --------------------------------------------------------------
    byte                    1                    0          [-128~127]
    short                   2                    0          [-32768~32767]
    int                     4                    0          [-2147483648~2147483647]
    long                    8                    0L

    java语言中的“整数型字面值”被默认当做int类型来处理,要让这个“整数型字面值”被当做
    long类型来处理的话,需要在“整数型字面值”后面添加1\L,建议使用大写的L

    Java语言中的整数型字面值有三种表达方式:
              1.十进制【是一种缺省默认的方式】
              2.八进制【在编写八进制整数型字面值的时候需要以0开始】
              3.十六进制【在编写十六进制整数型字面值的时候需要以0x开始】
              
    */

    public class java
    {
        public static void main(String[] args) {
            int a=10;
            int b=010;
            int c=0x10;
            //整数型字面值以0开头的,后面的一串数字就是八进制
            //整数型字面值以0x开头的,后面的一串数字就是十六进制
            System.out.println(a);  //10
            System.out.println(b);  //8
            System.out.println(c);  //16
            
            long x=123;
            //123整数型字面值被当做int类型,占用4个字节
            //x变量在声明的时候是long类型,占用8个字节
            //小容量可以自动转换为大容量,被称为自动类型转换机制
            //int类型的字面值123赋值给long类型的变量x,存在类型转换
            //int类型转换为long类型
            //long类型是大容量
            //int类型是小容量
            
            //如果后面的数字不是123,而是超出int类型的取值范围的数字,则无法转换long类型,
            //除非在这个数字后面添加一个L,代表转换为Long类型
            System.out.println(x);
            
            
            
            
            //   long x=100L;
            //100L是long类型字面值
            //x是Long类型变量
            //不存在类型转换,直接复制
            //   int y=x;
            //x变量是Long类型,8个字节
            //y变量是int类型,4个字节
            //编译错误,因为大容量转换成小容量,需要进行强制类型转换
            //强制类型转换需要加“强制类型转换符”
            //加上强制类型转换符后编译可以通过,但是运行阶段可能损失精度
            //所以强制类型转换谨慎使用,因为损失精度后可能损失很严重
            
            //强制转换原理:
                       //原始数据:00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001
                       //强制转换后的数据: 00000000 00000000 00000000 00000001
                       //将左边的二进制砍掉,精度有所损失
            
            
        }
        
        
    }
     

  • 相关阅读:
    2310d模板替换运行时
    STM32单片机OLED俄罗斯方块单片机小游戏
    docker安装elasticsearch7.8和kibana7.8
    22款奔驰GLS450升级中规主机 实现导航地图 中文您好奔驰
    k8s学习-Secret(创建、使用、更新、删除等)
    C# 自定义控件库之Lable组合控件
    【智能家居-大模型】构建未来,聆思大模型智能家居交互解决方案正式发布
    流畅的python
    「设计模式」抽象工厂模式
    Kotlin(十一)Kotlin中的Object关键字
  • 原文地址:https://blog.csdn.net/Sweet_Jan/article/details/126250337