首页 > 编程语言 >Java-基础类

Java-基础类

时间:2023-12-14 22:33:06浏览次数:39  
标签:Java int 32 基础 整数 二进制 64

Java-基础类

int

在 Java 中,int​ 类型是32位的。它表示一个32位的带符号整数,范围从 -2^31​ 到 2^31 - 1​,即从 -2147483648​ 到 2147483647​(±21亿)。

为什么不是64位?

Java中的int​类型是32位的,而不是64位,是由于历史原因和平台兼容性考虑。

当Java语言设计之初,主要关注了内存效率和性能。32位整数的操作对于许多应用程序来说足够,并且可以更有效地使用内存。此外,Java的设计目标之一是在各种平台上实现一致性,包括32位和64位的操作系统。因此,为了保持跨平台的一致性,Java选择了32位整数。

随着时间的推移,Java确实引入了64位的原始数据类型,即long​类型,以满足更大范围的整数需求。因此,如果需要更大的整数范围,可以使用long​类型。但对于一般的整数操作,使用32位的int​类型通常足够,并且可以提供更好的性能和内存效率。

long

在Java中,long​类型是64位的,表示一个64位的带符号整数。long​的范围从 -2^63​ 到 2^63 - 1​,即从 -9223372036854775808​ 到 9223372036854775807​(±922亿亿)。这提供了更广泛的整数范围,适用于需要处理非常大的整数值的情况。

Integer

Integer​是int​的包装类型,其中包含一个IntegerCache​类,缓存了-128~127的所有数字。

可通过jvm参数java.lang.Integer.IntegerCache.high​来调整最大值

1702463776196

numberOfLeadingZeros(int i)

返回指定int值的二进制补码二进制表示形式中最高位(“最左边”)一位之前的零位数。如果指定值在其二进制补码表示形式中没有一位(换句话说,如果它等于零),则返回 32。
请注意,此方法与以 2 为底的对数密切相关。对于所有正int值 x:
下限(log 2 (x)) = 31 - numberOfLeadingZeros(x)
ceil(log 2 (x)) = 32 - numberOfLeadingZeros(x - 1)
形参:
i – 要计算前导零数量的值
返回值:
指定int值的二进制补码二进制表示形式中最高位(“最左边”)一位之前的零位数,如果该值等于零,则为 32。
自:
1.5

入参 结果 说明
0 32 0的二进制标识为(32个0)
00000000000000000000000000000000
7 8 7的二进制标识为(29个0)
00000000000000000000000000000111
15 16 15的二进制标识为(28个0)
00000000000000000000000000001111

标签:Java,int,32,基础,整数,二进制,64
From: https://www.cnblogs.com/anhaoyang/p/javabasic-class-gflaq.html

相关文章

  • 无涯教程-Java - acos()函数
    该方法返回指定双精度值的反余弦值。acos()-语法doubleacos(doubled)这是参数的详细信息-d - 双精度数据类型。acos()-返回值此方法返回指定双精度值的反余弦。acos()-示例publicclassTest{publicstaticvoidmain(Stringargs[]){double......
  • 2023-2024 20231313《计算机基础与程序设计》第十二周学习总结
    2023-202420231313《计算机基础与程序设计》第十二周学习总结作业速达作业课程班级链接作业要求计算机基础与程序设计第十二周学习总结作业内容《C语言程序设计》第11章并完成云班课测试作业正文我的作业目录教材总结总结学习过程中的问题《C语言程......
  • 2023-2024-1 20231320 《计算机基础与程序设计》第十二周学习总结
    2023-2024-120231320《计算机基础与程序设计》第十二周学习总结作业信息这个作业属于哪个课程<班级的链接>(2023-2024-1计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2022-2023-1计算机基础与程序设计第十二周作业)这个作业的目标<自学《C语言程序......
  • 关于再次出现 Could not open client transport with JDBC Uri: jdbc:hive2://node1:1
    写在最前边——我报错是因为空间不足 当我时隔两个月再次看到这个报错的时候我是感到绝望的————然而当我查了一遍百度发现唯一一个拥有相同报错解决方法的博客出自我之手的时候我的崩溃的————在我发现曾经的方法无法解决现在的我的报错的时候,我觉得我的心都碎了QAQ......
  • 第六章:应用安全基础
    ##教材学习总结思维导图:总揽全局 各个小节思维导图及简介第一节:应用安全概述简介:密码技术是核心支撑技术,系统安全技术与网络安全技术是应用安全技术的基础和关键技术*身份认证是保障应用安全的基础*访问控制是应用系统信息安全必不可少的组成部分*大数据本质上是一种方......
  • java基础语法之一维数组的应用案例
    一:概述在前面已经介绍了一维数组的相关语法知识,下面来讲一下具体案例的实现。二:具体说明<1>数组的遍历数组遍历指的是:获取数组中的每一个元素,我们可以把获取到的元素输出在控制台具体代码和运行截图如下:publicstaticvoidmain(String[]args){//定义数组并初始化......
  • Flutter技术基础
    技术基础语法主要是用dart,dart就是js和java的组合体,变量的声明,类,继承,构造函数,setget方法,以_开头的变量通常表示为私有变量。这意味着这个变量或者方法只能在当前Dart文件中访问,而不能被其他文件访问。一些集合包如map、list、set等等会用到的数据结构2.包管理:配置文件pubs......
  • 无涯教程-Java - asin()函数
    该方法返回指定双精度值的反正弦值。asin()-语法doubleasin(doubled)这是参数的详细信息-d - 双精度数据类型。asin()-返回值此方法返回指定双精度值的反正弦。asin()-示例publicclassTest{publicstaticvoidmain(Stringargs[]){doub......
  • java实验
    零.前置芝士(可以不了解)信息量定义信号量(semaphore)是操作系统中用来解决并发中的互斥和同步问题的一种方法。是可以用来保证两个或多个关键代码段不被并发调用。目的类似计数器,常用在多线程同步任务上,信号量可以在当前线程某个任务完成后,通知别的线程,再进行别的任务。同步:处......
  • 【python基础】颜色列表和颜色字典以及python画图
    前言 使用:list_keys=[iforiincnames.keys()]list_values=[iforiincnames.values()] 颜色列表示例:colormap=['#7A57D1','#FF731D','#004d61','#bc8420','#CF0A0A','#83FFE6','#0000A1',&#......