为什么下面的Golang代码没有';我跑不了?

为什么下面的Golang代码没有';我跑不了?,go,Go,此代码运行并给出0到999之间的随机数: package main import ( "fmt" "math/rand" "time" ) func main() { rand.Seed(time.Now().UnixNano()) fmt.Println(rand.Intn(999)) } 但是下面的代码拒绝运行并给出了一个错误 代码: package main import ( "fmt" "math/rand" "ti

此代码运行并给出0到999之间的随机数:

package main

import (
    "fmt"
    "math/rand"
    "time"
)

func main() {
    rand.Seed(time.Now().UnixNano())
    fmt.Println(rand.Intn(999))
}
但是下面的代码拒绝运行并给出了一个错误

代码:

package main

import (
    "fmt"
    "math/rand"
    "time"
)

func main() {
    r := rand.Seed(time.Now().UnixNano())
    fmt.Println(r.Intn(999))
}
错误消息:

package main

import (
    "fmt"
    "math/rand"
    "time"
)

func main() {
    r := rand.Seed(time.Now().UnixNano())
    fmt.Println(r.Intn(999))
}
rand.Seed(time.Now().UnixNano())用作值


注意:我是stackOverflow新手,因此如果问题不符合规则或标准,请原谅。

rand.Seed
不返回任何值,这是一个无效函数。

rand.Seed
不返回任何值,这是一个无效函数。

种子使用提供的种子值将生成器初始化为 确定性状态。Seed不应与任何 其他兰德方法

这意味着,它为生成随机数设置了一些种子,并且不返回任何内容,但您尝试将其用作godoc的某个值

种子使用提供的种子值将生成器初始化为 确定性状态。Seed不应与任何 其他兰德方法


这意味着,它为生成随机数设置了一些种子,并且不返回任何内容,但您尝试将其用作某个值

rand.seed
“设置”
rand.Intn
,如果您愿意的话。当您调用
rand.Seed
时,它会创建一个种子,以后可以与
rand.Intn
一起使用
rand.Intn
返回一个值,因此

rand.Seed(time.Now().UnixNano())
fmt.Println(rand.Intn(999))

工作。但是由于
rand.Seed
不返回值,因此对其调用
rand.Intn
会返回错误。

rand.Seed
“设置”
rand.Intn
,如果您愿意的话。当您调用
rand.Seed
时,它会创建一个种子,以后可以与
rand.Intn
一起使用
rand.Intn
返回一个值,因此

rand.Seed(time.Now().UnixNano())
fmt.Println(rand.Intn(999))

工作。但是由于
rand.Seed
不返回值,因此对其调用
rand.Intn
会返回错误。

rand.Seed
不会返回任何内容。它只初始化默认的伪随机数生成器。使用此种子,您只需调用
rand.Intn
,而不是
r.Intn
我相信
r:=rand.Intn(999)
在使用
rand.seed(time.Now().UnixNano())
初始化后,应该可以完成此任务。Matei,不。文档非常简单而且非常清晰!要么使用全局生成器,要么初始化命名的生成器。
rand.Seed
不返回任何内容。它只初始化默认的伪随机数生成器。使用此种子,您只需调用
rand.Intn
,而不是
r.Intn
我相信
r:=rand.Intn(999)
在使用
rand.seed(time.Now().UnixNano())
初始化后,应该可以完成此任务。Matei,不。文档非常简单而且非常清晰!要么使用全局生成器,要么初始化命名的生成器。