簡體   English   中英

如何隨機選擇一個字符串

[英]How to randomly select a string

單擊按鈕時,字符串應顯示為輸出ex。 good morning good afternoon 如何使用C#隨機選擇要顯示的字符串?

自從我使用C#進行編程以來已經過了幾年(3-4),但這不夠簡單和優雅:

string randomPick(string[] strings)
{
    return strings[random.Next(strings.Length)];
}

您還應該檢查輸入數組是否為null

您可以定義一個擴展方法來選擇任何IEnumerable (包括字符串數組)的隨機元素:

public static T RandomElement<T>(this IEnumerable<T> coll)
{
    var rnd = new Random();
    return coll.ElementAt(rnd.Next(coll.Count()));
}

用法:

string[] messages = new[] { "good morning", "good afternoon" };
string message = messages.RandomElement();

這里的ElementAtElementAtCount具有針對數組和List對象的優化版本,而算法被推廣用於所有有限集合類型。

嘗試這個,

Random random = new Random();
string[] weekDays = new string[] { "Sat", "Sun", "Mon", "Tue", "Wed", "Thu", "Fri" };
Response.Write(weekDays[random.Next(6)]);

您只需要一個字符串數組和一個隨機數來從數組中提取值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM