go的数据类型-基本数据类型-整型

2023-04-19 20:32:40 浏览数 (1)

整型(integer)是Go语言中最常用的基本数据类型之一,表示整数值。Go语言提供了多种整型类型,不同类型的整型类型在存储范围、内存占用、可表示的数字范围等方面有所不同。在本篇文章中,我们将对Go语言的整型类型进行详细介绍,并且给出示例以加深理解。

整型类型的分类

Go语言提供了以下整型类型:

  • int8:有符号8位整数类型,范围是 -128 到 127。
  • int16:有符号16位整数类型,范围是 -32768 到 32767。
  • int32:有符号32位整数类型,范围是 -2147483648 到 2147483647。
  • int64:有符号64位整数类型,范围是 -9223372036854775808 到 9223372036854775807。
  • uint8:无符号8位整数类型,范围是 0 到 255。
  • uint16:无符号16位整数类型,范围是 0 到 65535。
  • uint32:无符号32位整数类型,范围是 0 到 4294967295。
  • uint64:无符号64位整数类型,范围是 0 到 18446744073709551615。
  • uintptr:用于存储指针的无符号整数类型,在32位系统上为32位,在64位系统上为64位。

其中,int和uint类型的大小和平台相关。在32位平台上,它们都是32位;在64位平台上,它们都是64位。在实际应用中,为了避免不必要的麻烦,我们一般使用int和uint类型。

整型类型的默认值

整型类型的默认值为0,可以用下面的代码验证:

代码语言:javascript复制
var i int
fmt.Println(i) // 输出 0

整型类型的转换

Go语言中不同整型类型之间可以相互转换,但需要注意转换时可能会发生精度丢失或数据溢出的问题。下面是一个简单的转换示例:

代码语言:javascript复制
var a int32 = 100
var b int64 = int64(a)
fmt.Println(a, b) // 输出 100 100

上面的代码将int32类型的变量a转换为int64类型的变量b。

整型类型的运算

整型类型支持基本的算术运算(加、减、乘、除)和比较运算(等于、不等于、大于、小于、大于等于、小于等于)。下面是一些简单的示例::

代码语言:javascript复制
var a, b int = 3, 4

fmt.Println(a   b)    // 输出 7
fmt.Println(a - b)    // 输出 -1
fmt.Println(a * b)    // 输出 12
fmt.Println(b / a)    // 输出 1

fmt.Println(a == b)   // 输出 false
fmt.Println(a != b)   // 输出 true
fmt.Println(a > b)    // 输出 false
fmt.Println(a < b)    // 输出 true
fmt.Println(a >= b)   // 输出 false
fmt.Println(a <= b)   // 输出 true

上面的代码中,我们定义了两个整型变量a和b,然后对它们进行了加、减、乘、除、等于、不等于、大于、小于、大于等于、小于等于等基本运算,输出了运算结果。需要注意的是,在整型除法运算中,如果除不尽,Go语言会向下取整。

go

0 人点赞