C# 如何从数组中随机选取一行?
当我的应用程序启动时,我会执行以下操作:C# 如何从数组中随机选取一行?,c#,arrays,C#,Arrays,当我的应用程序启动时,我会执行以下操作: Random rand = new Random(); 然后我有了创建短语列表的代码。我想做的是只选择该列表中一行的短语ID。我正在尝试与兰德合作,但对如何做到这一点感到非常困惑。以下是我到目前为止的情况: var phrases = App.selectedPhrases.All.Where(x => x.Points > 1).ToList(); if (phrases.Count == 0) return; var indx = (i
Random rand = new Random();
然后我有了创建短语列表的代码。我想做的是只选择该列表中一行的短语ID。我正在尝试与兰德合作,但对如何做到这一点感到非常困惑。以下是我到目前为止的情况:
var phrases = App.selectedPhrases.All.Where(x => x.Points > 1).ToList();
if (phrases.Count == 0) return;
var indx = (int)rand.Next(phrases.Count) + 1;
var id = phrases[indx].PhraseId;
有人能帮我确认一下,这是正确的方法吗?不管列表中有多少行,它都能工作吗?如果只有一个元素,它会选择它吗?或者我应该为这种情况编写不同的代码吗
var indx = (int)rand.Next(phrases.Count) + 1;
致:
0
var indx = (int)rand.Next(phrases.Count) + 1;
致:
哦,那更好了,你让我在那里搔了一会儿头second@TheGeneral是的,我犯了一个错误,我刚醒来,我还很困;)那么,如果计数是1,那么它将始终选择数组中的0元素?@Alan2是的,随机数没有其他选择。啊,那更好,你让我在那里挠头了一段时间second@TheGeneral是的,我犯了一个错误,我刚醒来,我还很困;)因此,如果计数为1,那么它将始终选择数组中的0元素?@Alan2是的,随机数没有其他选择