返回顶部
首页 > 资讯 > 精选 >Go中Int的最大数值是什么
  • 503
分享到

Go中Int的最大数值是什么

2023-06-25 14:06:01 503人浏览 独家记忆
摘要

本篇内容主要讲解“Go中Int的最大数值是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Go中Int的最大数值是什么”吧!总结:import "math/bits&quo

本篇内容主要讲解“Go中Int的最大数值是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Go中Int的最大数值是什么”吧!

总结:

import "math/bits"const (    MaxUint uint = (1 << bits.UintSize) - 1    MaxInt int = (1 << bits.UintSize) / 2 - 1    MinInt int = (1 << bits.UintSize) / -2)

背景:

我想你知道,uint类型的大小与uint32uint64相同,具体取决于您所在的平台。通常,只有在没有接近最大值风险的情况下,才会使用无尺寸的版本,因为没有尺寸规格的版本可以使用“本机”类型,这取决于平台,并且它往往更快。

请注意,更 “快” 是因为使用非本机类型需要处理器执行额外的数学计算和边界检查,以便模拟更大或更小的整数。因此,处理器(或编译器的优化代码)性能会比添加边界检查的代码要好。

话虽如此,在某些情况下,了解您正在使用的内容仍然很有用。

“math/bits“ 包中含有以字节为单位的uint大小(译者注:UintSize )。要确定最大值,将 1 左移许多位,再减去 1。即:(1 << bits.UintSize) - 1

请注意,在计算 uint 的最大值时,您通常需要将其显式放入一个 uint(或更大的类型)类型变量中,否则编译器可能会失败,因为它会默认尝试将该计算分配给一个有符号int(很明显,它不适合),所以:

const MaxUint uint = (1 << bits.UintSize) - 1

这是您问题的直接答案,但您可能对一些相关的计算感兴趣。

根据 spec,uintint 的大小始终相同。

uint 32 位或 64 位

intuint 大小相同

因此,我们也可以使用这个常量来确定 int 的最大值,方法是采用相同的答案并除以 2,然后减去 1。 即:(1 << bits.UintSize) / 2 - 1

以及 int 的最小值,通过将 1 移位那么多位并将结果除以 -2。 即:(1 << bits.UintSize) / -2

总之:

** MaxUint: ** (1 << bits.UintSize) - 1

** MaxInt: ** (1 << bits.UintSize) / 2 - 1

** MinInt: ** (1 << bits.UintSize) / -2

完整示例(应与下图相同):

package mainimport (    "fmt"    "math"    "math/bits"    "runtime"    "strconv")func main() {    var mi32 int64 = math.MinInt32    var mi64 int64 = math.MinInt64    var i32 uint64 = math.MaxInt32    var ui32 uint64 = math.MaxUint32    var i64 uint64 = math.MaxInt64    var ui64 uint64 = math.MaxUint64    var ui uint64 = (1 << bits.UintSize) - 1    var i uint64 = (1<<bits.UintSize)/2 - 1    var mi int64 = (1 << bits.UintSize) / -2    fmt.Printf(" MinInt32: %d\n", mi32)    fmt.Printf(" MaxInt32:  %d\n", i32)    fmt.Printf("MaxUint32:  %d\n", ui32)    fmt.Printf(" MinInt64: %d\n", mi64)    fmt.Printf(" MaxInt64:  %d\n", i64)    fmt.Printf("MaxUint64:  %d\n", ui64)    fmt.Printf("  MaxUint:  %d\n", ui)    fmt.Printf("   MinInt: %d\n", mi)    fmt.Printf("   MaxInt:  %d\n", i)    fmt.Println("MaxUint:", uint(math.MaxUint))    fmt.Println("MinInt:", math.MinInt)    fmt.Println("MaxInt:", math.MaxInt)    fmt.Println("系统架构:", runtime.Compiler, runtime.GOARCH, runtime.GOOS)    fmt.Println("Int 大小:", strconv.IntSize)}

输出:

MinInt32: -2147483648 MaxInt32:  2147483647MaxUint32:  4294967295 MinInt64: -9223372036854775808 MaxInt64:  9223372036854775807MaxUint64:  18446744073709551615  MaxUint:  18446744073709551615   MinInt: -9223372036854775808   MaxInt:  9223372036854775807MaxUint: 18446744073709551615MinInt: -9223372036854775808MaxInt: 9223372036854775807系统架构: GC amd64 darwinInt 大小: 64

到此,相信大家对“Go中Int的最大数值是什么”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Go中Int的最大数值是什么

本文链接: https://lsjlt.com/news/305605.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Go中Int的最大数值是什么
    本篇内容主要讲解“Go中Int的最大数值是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Go中Int的最大数值是什么”吧!总结:import "math/bits&quo...
    99+
    2023-06-25
  • MySQL中int最大值深入讲解
    导语 前两天看到的问题,展开写一下。 字节 我们都知道计算机是以二进制为基础。存储的基本单位是 Bit,也称为比特、二进制位。1bit 可以表示 0 或者 1 两个数字,是可能存在的最小的信息量,任何小...
    99+
    2024-04-02
  • mysql求最大值、最小值和平均值的函数是什么
    这篇文章给大家分享的是有关mysql求最大值、最小值和平均值的函数是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。在mysql中,可以分别使用MAX()函数、MIN()函数和...
    99+
    2024-04-02
  • java求最大值和最小值的方法是什么
    在Java中,可以使用以下方法来求最大值和最小值: 求最大值: int[] nums = {3, 6, 2, 8, 4}; in...
    99+
    2024-03-07
    java
  • python求最大值的方法是什么?
      Python怎么输出三个数的最大的数Python求最大值的方法是什么本篇文章,通过实操案例为大家详细介绍一下,希望各位小伙伴认真看完哦。   1、if判断   使用if流程语句依次判断三个数之间的大小,示例如下:   num1=f...
    99+
    2023-10-04
    python Powered by 金山文档
  • mongodb查最大值的方法是什么
    在 MongoDB 中,可以使用 `find()` 方法结合 `sort()` 方法来查找集合中的最大值。首先,使用 `find()...
    99+
    2023-09-12
    mongodb
  • MySQL数据库获取最大值的方法是什么
    要在MySQL数据库中获取最大值,可以使用以下方法: 使用MAX()函数:可以使用SELECT MAX(column_na...
    99+
    2024-04-02
  • mysql中int(3)和int(10)的数值范围是否相同
    目录提问:回答:真实情况:知识点结论:总结提问: mysql的字段,unsigned int(3), 和unsinged int(6), 能存储的数值范围是否相同。如果不同,分别是多...
    99+
    2024-04-02
  • php中求数组最大值的函数是哪个
    php中求数组最大值的函数是“max()”。max()函数可以接收一个包含多个值的数组参数,语法“max(array_values)”,会计算并返回“array_values”数组中的最大值;也可以接收多个比较值参数,语法“max(valu...
    99+
    2022-06-29
    php数组 php
  • 返回最大值的index pytorch方式是什么
    这篇文章主要讲解了“返回最大值的index pytorch方式是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“返回最大值的index pytorch方式是什么”吧!返...
    99+
    2023-07-02
  • php怎么求数组最大值和最小值的差值
    求差值的步骤:1、使用max()函数获取数组最大值,语法“max($arr)”;2、使用min()函数获取数组最小值,语法“min($arr)”;3、使用“-”运算符将获取的最大值和最小值相减计算差值即可,语法“最大值 - 最小值”。本教程...
    99+
    2022-07-07
    php数组 php
  • php中怎么求数组最大值
    这篇文章主要介绍了php中怎么求数组最大值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php中怎么求数组最大值文章都会有所收获,下面我们一起来看看吧。php中求数组最大值的函数是“max()”。max()函数...
    99+
    2023-07-02
  • r语言怎么获取数组中的最大值和最小值
    在R语言中,可以使用max()函数和min()函数来获取数组中的最大值和最小值。 例如,假设有一个包含一组数字的数组x,要获取该数组...
    99+
    2024-03-06
    r语言
  • Linux系统init1模式最大值是什么
    这篇文章给大家介绍Linux系统init1模式最大值是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Linux系统init命令简介:所谓的init进程,它是一个由内核启动的用户级进程。内核自行启动(已经被载入内存,...
    99+
    2023-06-28
  • javascript中怎么求三个数的最大值
    这篇文章主要介绍“javascript中怎么求三个数的最大值”,在日常操作中,相信很多人在javascript中怎么求三个数的最大值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • vb怎么找出数组中的最大值
    要找出数组中的最大值,可以使用循环遍历数组,比较每个元素的大小,记录下最大的值。可以使用以下代码来实现:```vbDim array...
    99+
    2023-10-12
    vb
  • java怎么获取数组中最大的值
    你可以使用循环遍历数组,然后比较每个元素的值来找到最大值。以下是一个使用Java的示例代码:```public class Main...
    99+
    2023-08-16
    java
  • Java怎么获取数组中的最大值
    要获取数组中的最大值,可以通过以下方法实现: 使用循环遍历数组,逐个比较数组中的元素,找到最大值。 public static ...
    99+
    2024-03-07
    Java
  • php怎么输出数组的最大值和最小值
    要输出数组的最大值和最小值,可以使用PHP内置的max()和min()函数。示例代码如下:```php$arr = [1, 2, 3...
    99+
    2023-10-10
    php
  • MySQL中int(10)和int(11)的区别是什么
    这篇文章主要介绍了MySQL中int(10)和int(11)的区别是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL中int(10)和int(11)的区别是什么文章都会有所收获,下面我们一起来看看吧...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作