gpt4 book ai didi

f# - 在 F# 中获取随机数

转载 作者:行者123 更新时间:2023-12-04 18:36:26 25 4
gpt4 key购买 nike

我在 F# 中有以下函数:

let randomCh () = 
let random = Random()
alph.Chars (random.Next (alph.Length - 1));

此函数每次返回相同的值。我在 C# 中遇到了同样的问题,解决方案非常简单:只创建一个 Random 对象,如下所示:

    var rnd = new Random();

for (int i = 0; i < 10; i++)
Console.WriteLine(rnd.Next(10));

如何在 F# 中实现相同的行为:每次获取随机值?

最佳答案

好吧,您的 C# 代码没有定义函数,而您的 F# 代码定义了函数;你可能在 C# 中遇到同样的问题。您应该从 randomCh 函数中重构您的 random 定义,或者在初始化 random 之后将 randomCh 绑定(bind)到一个函数:

let alph = "abcdefg"

let randomCh =
let random = Random()
fun () -> alph.Chars (random.Next (alph.Length - 1))

printfn "%O" <| randomCh()
printfn "%O" <| randomCh()

关于f# - 在 F# 中获取随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37898225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com