运行环境
# systeminfo
OS 名称: Microsoft Windows 10 企业版 LTSC
OS 版本: 10.0.17763 暂缺 Build 17763
系统类型: x64-based PC
处理器: 安装了 1 个处理器。
[01]: Intel64 Family 6 Model 78 Stepping 3 GenuineIntel ~2607 Mhz
BIOS 版本: LENOVO N1CET43W (1.11 ), 2016-04-14
Windows 目录: C:Windows
系统目录: C:Windowssystem32
启动设备: DeviceHarddiskVolume1
系统区域设置: zh-cn;中文(中国)
输入法区域设置: zh-cn;中文(中国)
时区: (UTC+08:00) 北京,重庆,香港特别行政区,乌鲁木齐
物理内存总量: 19,891 MB
可用的物理内存: 12,530 MB
虚拟内存: 最大值: 19,923 MB
虚拟内存: 可用: 11,891 MB
虚拟内存: 使用中: 8,032 MB
# go version
go version go1.16.3 windows/amd64
源码
package main
import (
"fmt"
"time"
)
func main() {
start := time.Now()
for _tick := 1; _tick<=10; _tick++ {
var sum uint32 = 0
var i uint32 = 0
for i=0; i<1000000000; i++{
sum += i
}
}
fmt.Printf("Spend time: %s", time.Since(start))
}
使用 uint32
执行 5 次,平均耗时:3.1679441s
使用 int
执行 5 次,平均耗时:6.37897652s
其他
某教程里面这样说:
大多数情况下,我们只需要 int 一种整型即可,它可以用于循环计数器(for 循环中控制循环次数的变量)、数组和切片的索引,以及任何通用目的的整型运算符,通常 int 类型的处理速度也是最快的。
不严谨
使用上,int
更方便没什么问题,但 int 肯定不是最快的