2.4.1 整数型

news2024/12/26 23:11:44

文章目录

  • 1.整型基本数据类型介绍
  • 2.byte 数据类型
  • 3.short 数据类型
  • 4.int 数据类型
  • 5.long 数据类型


1.整型基本数据类型介绍

整型用于表示没有小数部分的数字,比如1,2,3等,其允许是负数,JAVA共提供了4种整型数据类型,分别是byte,short,int,long.

类型字节长度取值范围
byte4字节-2147483648~2147483647
short2字节-32768~32767
int8字节-9 223 372 036 854 775 808 ~ 9 223 372 036 854 775 807
long1字节-128 ~ 127

大多数情况下我们只要使用int类型即可,但是平时还是要注意数据越界的问题,其每个类型都有自己可得取值范围,如果传入的数超过其取值范围就会产生越界的问题,这个我们后边还会再详细介绍。

2.byte 数据类型

我们通过编写代码调用其方法来测试byte数据类型的最大值与最小值:

package partOne;
/*
    本类用于测试基本数据类型--byte
 */
public class TestByte {
    //创建java的入口函数--main方法
    public static void main(String[] args) {
        /*
            定义对应类型变量的格式:  类型 名字=值;
            测试其最大值与最小值
         */
        //MIN_VALUE是byte数据类型提供的方法,其返回byte数据类型的最小值
        byte minByte = Byte.MIN_VALUE;
        //MAX_VALUE是byte数据类型提供的方法,其返回byte数据类型的最大值
        byte maxByte = Byte.MAX_VALUE;

        //输出打印其最大值与最小值
        System.out.println(minByte);    //输出结果为:-128
        System.out.println(maxByte);    //输出结果为:127

    }
}

3.short 数据类型

我们通过编写代码调用其方法来测试short数据类型的最大值与最小值:

package partOne;
/*
    本类用于测试基本数据类型--short
 */
public class TestShort {
    //创建java的入口函数--main方法
    public static void main(String[] args) {
        /*
            定义对应类型变量的格式:  类型 名字=值;
            测试其最大值与最小值
         */
        //MIN_VALUE是short数据类型提供的方法,其返回short数据类型的最小值
        short minShort = Short.MIN_VALUE;
        //MAX_VALUE是short数据类型提供的方法,其返回short数据类型的最大值
        short maxShort = Short.MAX_VALUE;

        //输出打印其最大值与最小值
        System.out.println(minShort);    //输出结果为:-32768
        System.out.println(maxShort);    //输出结果为:32767

    }
}

4.int 数据类型

Java中规定所有直接写出来的整数,就是整型直接量。整型直接量的默认类型是int,也就是说整型直接量不能超过int的范围。
在这里插入图片描述

整数除法的运算问题
Java中两个整数做除法运算时,其结果会进行取整操作(舍弃结果的小数部门)。也就是说:两个整数相处的结果是求商。

在这里插入图片描述

当整数在进行较大运算时,其结果可能会超出int的范围,而发生了整数的溢出问题。溢出的结果可能是:两个正整数运算的结果可能是负数;两个负整数运算的结果可能是正数。
在这里插入图片描述

注意:整数运算的溢出问题是无法解决的,要想避免整数溢出只能使用大类型的long来操作。

我们通过编写代码调用其方法来测试int数据类型的最大值与最小值:

package partOne;
/*
    本类用于测试基本数据类型--int
 */
public class TestInt {
    //创建java的入口函数--main方法
    public static void main(String[] args) {
        /*
            定义对应类型变量的格式:  类型 名字=值;
            测试其最大值与最小值
         */
        //MIN_VALUE是Integer数据类型提供的方法,其返回int数据类型的最小值
        int minInt = Integer.MIN_VALUE;
        //MAX_VALUE是Integer数据类型提供的方法,其返回int数据类型的最大值
        int maxInt = Integer.MAX_VALUE;

        //输出打印其最大值与最小值
        System.out.println(minInt);    //输出结果为:-2147483648
        System.out.println(maxInt);    //输出结果为:2147483647

    }
}

Integer是int类型的包装类,后续会详细讲解。

5.long 数据类型

整型直接量是int类型,如果要操作超出int范围的整数,只能使用long类型直接量。long类型直接量就是直接在整型直接量的末尾加L或l。
在这里插入图片描述
long类型存储时间毫秒值
JDK环境中提供了一个用于获取从1970年1月1日零点到此时此刻所经历的时间毫秒值的功能,具体写法为:System.currentTimeMillis()
由于该毫秒值数据量非常大,远远超过int的范围,只能使用较大的long类型来存放该结果。
在这里插入图片描述
我们通过编写代码调用其方法来测试long数据类型的最大值与最小值:

package partOne;
/*
    本类用于测试基本数据类型--long
 */
public class TestLong {
    //创建java的入口函数--main方法
    public static void main(String[] args) {

        long minLong= Long.MIN_VALUE;
        long maxLong = Long.MAX_VALUE;

        //输出打印其最大值与最小值
        System.out.println(minLong);    //输出结果为:-9223372036854775808
        System.out.println(maxLong);    //输出结果为:9223372036854775807
        
        //对于long长整型类型的定义,我们需要在值后添加l或L来表示其是一个长整型,为了与数字1做更好的区分,建议使用L
        long a = 10000000000L;
        System.out.println(a);

    }
}

对于整数型来说,其默认类型为int,当初始化值超过int的范围时,就会报错,所以我们在使用long数据类型时,需要在数字后面添加l或L来表示其是一个长整型,为了与数字1做更好的区分,建议使用L,这样更方便阅读。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/178065.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电阻抗成像OpenEIT 番外篇 简单算法

算法意义 C→Y→V→eC\rightarrow Y \rightarrow V \rightarrow eC→Y→V→e 符号 符号含义–Ω\OmegaΩ研究图像区域∂Ω\partial\Omega∂Ω研究图像区域的边界ϕ(x,y)\phi(x,y)ϕ(x,y)代求电导率σ(x,y)\sigma(x,y)σ(x,y)节点电压 e 电导率jn(x,y)j_n(x,y)jn​(x,y)注入表…

C++ 多线程12:内存模型(stdmemory_order)

cpp 多线程:内存模型(std::memory_order) 文章目录cpp 多线程:内存模型(std::memory_order)概念内存模型基础原子操作间的关系Synchronized-withHappens-beforestd::memory_orderRelaxed orderingRelease-Consume orderingRelease-Acquire orderingSeque…

UnityEditor编辑器扩展开发-自定义Shader入门

估计需要自定义Shader 的人不多下面内容就看看作为小白的我们,无从入手,当然首先看看 Amplify Shader Editor(ASE)是如何实现Shader定义,从(ASE)的Shader代码,得知自定义原理(代码)//CustomEdit…

前端艺术之毛玻璃-倾斜-日历

前端艺术之毛玻璃-倾斜-日历描述项目效果index.htmlindex.css描述 项目描述开发语言HTML、JavaScript、CSS库dyCalendarJS、vanilla-tiltEdge108.0.1462.54 (正式版本) (64 位) 该项目中需要使用到的库有: dyCalendarJS vanilla-tilt.js 是 JavaScript 中的一个平…

C++ | 哈希 | 基于开散列结构的unordered系列容器模拟实现

文章目录unordered_map的封装所有接口的声明与实现operator[]重载unordered_set的封装上篇博客模拟实现了哈希的开散列结构,并且将迭代器与泛型进行了封装,至此我们可以将开散列作为底层结构对STL标准容器——unordered_map和unordered_set进行封装。但是…

使用Vue 简化 用户查询/添加功能

使用Vue简化 用户查询/添加功能1. 查询功能1.1 Vue核心对象:1.2 brand.html:1.3 selectAllServlet(无变化):2. 添加功能2.1 addBrandhtml:2.2 Vue核心对象:2.3 addServlet(无变化&am…

网关zuul源码解析==ZuulServlet

用法&#xff1a; 使用zuul网关&#xff0c;需要引入starter为 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-zuul</artifactId> </dependency> 同时在springboot启动类上加注解…

7、代码模板的使用

文章目录7、代码模板的使用7.1 查看Postfix Completion模板&#xff08;后缀补全&#xff09;7.2 查看Live Templates模板&#xff08;实时模板&#xff09;7.3 常用代码模板1 非空判断2 遍历数组和集合3 输出语句4 对象操作5 静态常量声明7.4 自定义代码模板1 自定义Postfix C…

Android入门第60天-MVVM中的Databinding与ListView结合使用

开篇 还记得我们进入Listview、GridView都是以一个layoutadapter组合在一起来实现的是吧&#xff1f;那么还记得我们的Adapter的写法么&#xff1f; 在我们的Adapter里提供了一个bindView方法 。 在调用时我们需要在Activity里把layout里的控件元素一个个传给这个Adapter。 在我…

【Linux】文件权限

本期我们来谈谈Linux上的权限&#xff1a;一、权限的概念在生活中我们处处都会遇到权限。权限是什么呢&#xff1f;下面是对于权限的定义&#xff1a;&#x1f4cc;权限&#xff1a;一件事是否允许被“谁”做&#x1f4cc;简化一下就是&#xff1a;权限人事物属性&#x1f4cb;…

【ROS-Navigation】—— Astar路径规划算法解析

文章目录前言1. 导航的相关启动和配置文件1.1 demo01_gazebo.launch1.2 nav06_path.launch1.3 nav04_amcl.launch1.4 nav05_path.launch1.5 move_base_params.yaml1.6 global_planner_params.yaml2. Astar路径规划算法解析2.1 astar.h2.2 astar.cpp参考文献前言 最近在学习ROS的…

《职场求生攻略》学习笔记 Day8

系列文章目录 这是本周期内系列打卡文章的所有文章的目录 《Go 并发数据结构和算法实践》学习笔记 Day 1《Go 并发数据结构和算法实践》学习笔记 Day 2《说透芯片》学习笔记 Day 3《深入浅出计算机组成原理》学习笔记 Day 4《编程高手必学的内存知识》学习笔记 Day 5NUMA内存知…

JavaEE-多线程进阶

✏️作者&#xff1a;银河罐头 &#x1f4cb;系列专栏&#xff1a;JavaEE &#x1f332;“种一棵树最好的时间是十年前&#xff0c;其次是现在” 目录常见的锁策略乐观锁 vs 悲观锁轻量级锁 vs 重量级锁自旋锁 vs 挂起等待锁互斥锁 vs 读写锁公平锁 vs 非公平锁可重入锁 vs 不可…

恶意代码分析实战 8 恶意代码行为

8.1 Lab 11-01 代码分析 首先使用strings进行分析。 Gina是在 msgina.dll中的。 很多有关资源的函数。 关于注册表的函数。 使用ResourceHacker查看。 发现是一个PE文件。 保存为dll文件。 动态分析 启动Promon。 进入注册表查看。 这个恶意代码向磁盘释放了什么&…

分享140个ASP源码,总有一款适合您

ASP源码 分享140个ASP源码&#xff0c;总有一款适合您 下面是文件的名字&#xff0c;我放了一些图片&#xff0c;文章里不是所有的图主要是放不下...&#xff0c; 140个ASP源码下载链接&#xff1a;https://pan.baidu.com/s/1vxAMMEI7WYS8SAnfbJKdGQ?pwdsas8 提取码&#x…

【ARIXV2209】Multi-Scale Attention Network for Single Image Super-Resolution

【ARIXV2209】Multi-Scale Attention Network for Single Image Super-Resolution 代码&#xff1a;https://github.com/icandle/MAN 这是来自南开大学的工作&#xff0c;将多尺度机制与大核注意机制结合&#xff0c;用于图像超分辨率。 2022年初&#xff0c;大核卷积火了&a…

GBD学习

GBD gbd官网 GDB, the GNU Project debugger 是一个debug工具 支持多种语言&#xff1a; Ada、Assembly、C、C、D、Fortran、Go、 Objective-C、OpenCL、Modula-2、Pascal、Rust 编译文件 首先使用gcc -g .c文件 -o 可执行文件名 进行编译&#xff0c;再使用gdb 可执行文件名…

恶意代码分析实战 10 数据加密

10.1 Lab13-01 比较恶意代码中的字符串&#xff08;字符串命令的输出&#xff09;与动态分析提供的有用信息&#xff0c;基于这些比较&#xff0c;哪些元素可能被加密&#xff1f; 使用WireShark进行动态分析。 有一串字符看起来像是加密的。 使用Strings分析一下。 发现疑似…

KUKA机器人初次通电配置

安全配置 机器人KSS系统里&#xff0c;会提示选择机器人信息的对话框&#xff0c;选择“机器人”按钮&#xff0c;如下&#xff1a; 承接上一步骤&#xff0c;通过示教器确认所有消息&#xff0c;单击消息提示区域&#xff0c;此时一定会弹出如图 所标示的报警消息&#xff0…

【唐诗学习】一、古诗概述

一、古诗概述 为什么要学习古诗词&#xff1f; 古诗词可以陶冶情操&#xff0c;传承文化诗词&#xff0c;其实就是古代的流行歌曲&#xff0c;它们记录着一个个时代的变迁&#xff0c;是历史的旋律。还有一点很重要&#xff1a;同样是记录历史&#xff0c;史书是国家视角&…