Golang系列之整数类型基本介绍

举报
yd_273762914 发表于 2022/01/22 00:06:30 2022/01/22
【摘要】 Golang系列之整数类型基本介绍,整数类型,简单来说,就是用于存放整数值的类型,也可以简称为整型。每门编程语言都有对应的数据类型,在golang中的整数类型要怎么使用?请看本博客 1、什么是整数类型?...

Golang系列之整数类型基本介绍,整数类型,简单来说,就是用于存放整数值的类型,也可以简称为整型。每门编程语言都有对应的数据类型,在golang中的整数类型要怎么使用?请看本博客

1、什么是整数类型?

简单来说,就是用于存放整数值的类型,也可以简称为整型

2、整型各个类型对比

有符号整型对比:

类型 有无符号 占用存储空间大小 范围 备注
int8 1字节 -128~127
int16 2字节 -215 ~ 215-1
int32 4字节 -231 ~ 2 31-1
int64 8字节 -263 ~ 2 63-1

无符号整型对比:

类型 有无符号 占用存储空间大小 范围 备注
uint8 1字节 0 ~ 255
uint16 2字节 0 ~ 216-1
uint32 4字节 0 ~ 2 32-1
uint64 8字节 0 ~ 2 64-1

整型的类型:

类型 有无符号 占用存储空间大小 范围 备注
int 32位操作系统4个字节,64位操作系统8个字节 -231 ~ 2 31-1 或 -263 ~ 2 63-1
uint 32位操作系统4个字节,64位操作系统8个字节 0 ~ 232-1 或 0 ~ 264-1
rune 与int32一样,4个字节 -231 ~ 2 31-1 等价于int32,表示一个Unicode码
byte 与uint8一样,1个字节 0 ~ 255 当要存储字符时选用byte
var r rune = 1
fmt.Printf("r类型%T" , r)
var b byte = 1
fmt.Printf("b类型%T" , b)

  
 
  • 1
  • 2
  • 3
  • 4

i数据类型:int
r类型int32b类型uint8

3、整型使用注意事项

  • go整型分为有符号和无符号两种类型,也即正值、负值两种情况,使用时候注意无符号的不能赋值为负数
  • intuint类型的大小和操作系统有关系,在32位操作系统和64位操作系统,intuint字节大小是不一样的
  • 整型默认声明为int类型
var n1 = 100
// 打印int
fmt.Printf("n1的类型:%T", n1)

  
 
  • 1
  • 2
  • 3
  • 查看某个变量的字节大小
var n int16
fmt.Printf("n变量占用的字节数:%d \n" , unsafe.Sizeof(n))

  
 
  • 1
  • 2

n变量占用的字节数:2

  • bit是计算机最小存储单位;byte是计算机基本存储单元

  • 使用类型时,按照变量具体使用,合理设置类型,不要设置太大的类型造成内存空间浪费

  • 在go语言中,intint16是不同的数据类型,以此类推

var intV1 int16
// 默认为int类型
intV2 := 10
// 两种不同类型不能赋值
intV1 = intV2

  
 
  • 1
  • 2
  • 3
  • 4
  • 5

使用强制类型转换可以解决这个错误:

intV1 = int8(intV2)) // 编译通过

  
 
  • 1

文章来源: smilenicky.blog.csdn.net,作者:smileNicky,版权归原作者所有,如需转载,请联系作者。

原文链接:smilenicky.blog.csdn.net/article/details/122621734

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。