• 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
                       //将左边的二进制砍掉,精度有所损失
            
            
        }
        
        
    }
     

  • 相关阅读:
    如何使用程序【爬取视频】,完成中秋节大制作
    python 动态导入模块,实现模块热更新
    电容笔哪个厂家的产品比较好?平价电容笔推荐
    Vue - 事件处理器 - 自定义组件 - 综合案例
    前端之Bootstrap框架
    Kubernetes----基于kubeadm工具在CentOS7.9虚拟机上部署一主两从类型的Kubernetes集群环境
    MySQL8访问限制用户的创建
    TCP三次握手四次挥手
    Maven 项目配置使用备忘录
    美国站群服务器如何解决跨国运营中的网络延迟问题?
  • 原文地址:https://blog.csdn.net/Sweet_Jan/article/details/126250337