涉及知识
- 时间库的基本使用, 获取时间差
使用golang的时间差功能, 获取程序执行时间
time.Now()
会返回一种特殊的Time类型的数据结构, 通过获取两个这样的数据, 使用.Sub
方法, 就可以求得时间差.
关键部分
var start = time.Now()
...
var end = time.Now()
fmt.Printf("time: %v", end.Sub(start))
结果: 会打印一个时间字符串
下面是一个大量求素数计算时间的demo
package main
import (
"fmt"
"time"
)
func isPrime(num int) (yes bool) {
for i := 2; i < num; i++ {
if num % i == 0 {
return false
}
}
return true
}
func main() {
var start = time.Now()
var cnt = 0
for i := 3; i < 100000; i++ {
if isPrime(i) {
cnt += 1
}
}
var end = time.Now()
fmt.Printf("time: %v", end.Sub(start))
fmt.Println(cnt)
}