从列表中选择任意随机字符串

Far*_*man 2 vb.net visual-studio-2010 vb.net-2010

如何从给定的字符串列表中选择任何随机字符串?例:

List1: banana, apple, pineapple, mango, dragon-fruit
List2: 10.2.0.212, 10.4.0.221, 10.2.0.223
Run Code Online (Sandbox Code Playgroud)

当我调用一些函数如randomize(List1)= somevar时,它只会从该特定列表中获取任何字符串.somevar中的结果将是完全随机的.怎么做到呢?非常感谢你 :)

Tim*_*ter 6

使用 Random

Dim rnd = new Random()
Dim randomFruit = List1(rnd.Next(0, List1.Count))
Run Code Online (Sandbox Code Playgroud)

请注意,如果要在循环中执行此代码,则必须重用随机实例.否则,由于使用当前时间戳初始化random,因此值将重复.

这样可行:

Dim rnd = new Random()
For i As Int32 = 1 To 10
    Dim randomFruit = List1(rnd.Next(0, List1.Count))
    Console.WriteLine(randomFruit)
Next
Run Code Online (Sandbox Code Playgroud)

因为总是使用相同的随机实例.

但这不起作用:

For i As Int32 = 1 To 10
    Dim rnd = new Random()
    Dim randomFruit = List1(rnd.Next(0, List1.Count))
    Console.WriteLine(randomFruit)
Next
Run Code Online (Sandbox Code Playgroud)