蘋果,芒果,木瓜,香蕉,番石榴,菠蘿 - 如何使用c#隨機生成這些單詞(一個接一個)?請幫我從話我的列表中隨機產生的話..生成隨機詞
Q
生成隨機詞
-6
A
回答
4
Random rnd = new Random();
string GetRandomFruit()
{
string[] fruits = new string[] { "apple", "mango", "papaya", "banana", "guava", "pineapple" };
return fruits[rnd.Next(0,fruits.Length)];
}
3
你可以得到「隨機排序」與LINQ的OrderBy
方法和使用Guid
小號
var words = new [] {"apple", "mango", "papaya", "banana", "guava", "pineapple"};
var wordsInRandomOrder = words.OrderBy(i => Guid.NewGuid());
foreach(var word in wordsInRandomOrder)
{
Console.WriteLine(word);
}
以下foreach
將按照隨機順序從words
陣列給您每個項目一次。
+0
我喜歡你的解決方案!除了Sasi在標籤中標明瞭C#-2。 –
2
你可以寫下面的代碼。
string[] fruits = new string[] { "apple", "mango", "papaya", "banana", "guava", "pineapple" };
Console.WriteLine(fruits[new Random().Next(0, fruits.Length)]);
+0
你試過這個嗎?創建一個新的Random()可以使用相同的種子進行播種並生成相同的輸出。 – StuartLC
3
可以使用費雪耶茨在陣列中的位置洗牌做的:
static class ArrayMethods
{
private static readonly Random rng = new Random();
public static void Shuffle<T>(IList<T> list)
{
var r = rng;
var len = list.Count;
for(var i = len-1; i >= 1; --i)
{
var j = r.Next(i);
var tmp = list[i];
list[i] = list[j];
list[j] = tmp;
}
}
}
如下:
var arr = new[]{
"apple",
"mango",
"papaya",
"banana",
"guava",
"pineapple"
};
ArrayMethods.Shuffle(arr);
foreach(var item in arr)
//print 'em out
相關問題
- 1. 生成隨機單詞
- 2. 在Django中生成隨機單詞
- 3. 用JS生成隨機單詞列表
- 4. 如何生成隨機單詞
- 5. 隨機單詞生成器 - Python
- 6. 在Java中生成隨機單詞?
- 7. 從c編程中的單詞列表生成隨機單詞
- 8. 隨機數生成
- 9. 生成隨機數
- 10. 生成隨機圖
- 11. 生成隨機ROWID
- 12. 生成隨機數
- 13. ArrayList隨機生成
- 14. Haskell隨機生成
- 15. 生成隨機ASCII
- 16. 生成隨機數
- 17. 生成隨機數
- 18. Javascript隨機生成
- 19. 隨機數生成
- 20. 隨機數生成機制
- 21. 生成隨機生日
- 22. 隨機()不生成隨機數
- 23. 從隨機長生成隨機數
- 24. 隨機生成一個隨機布爾
- 25. 通過隨機字符生成生成隨機名字太慢
- 26. 生成隨機數:計算隨機生成的x次數
- 27. 隨機數生成器幫助不生成隨機數 - C
- 28. 在隨機生成50個隨機數中使用隨機數#
- 29. 生成隨機2x100矩陣
- 30. 在Android中隨機生成
我是正確的思想,薩西希望置換算法,而不是隨機選擇更換? –
@Phillip國際海事組織可以解釋任何方式 - OP不明確。 – StuartLC