如何将值从Random转换为字符串?

时间:2015-12-03 20:02:58

标签: c# arrays string random

我是c#的新手,我想使用随机方法从实际数组列表中提供的值。但我似乎无法转换它或使用console.readline()。这是我的代码。

static void Main(string[] args)
        {
            string[] mots = new string[] { "pomme", "animal", "pont", "ensemble", "visuel", "acronyme", "cellule", "article", "syllable", "programme" };
            Random mot = new Random(mot.GetHashCode());
            mot = Console.ReadLine();
            Console.WriteLine(mots[mot.Next(9)]);

            string mot = "pomme";
            char[] charArray = mot.ToCharArray();
            Array.IndexOf(charArray);
} 

如何将输出转换为字符串以便以后使用?谢谢。

2 个答案:

答案 0 :(得分:0)

使用索引进行尝试。创建一个具有数组长度最大值的随机值 - 1.然后在此随机索引处返回字符串。

string[] mots = new string[] { "pomme", "animal", "pont", "ensemble", "visuel", "acronyme", "cellule", "article", "syllable", "programme" }; 
Random Rnd = new Random();

string RandomString()
{
  return mots[Rnd.Next(0, mots.Length - 1)];
}

希望这会有所帮助。随意问。

答案 1 :(得分:0)

从控制台获取mots数组中的随机元素并输出到控制台:

var mots = new [] { "pomme", "animal", "pont", "ensemble", "visuel", "acronyme", "cellule", "article", "syllable", "programme" }; 
var rand = new Random();
var index = rand.Next(0, mots.Length); // returns a random int between 0 and mots.Length - 1 (see below)
var mot = mots[index];
var motString = mot.ToString(); // get the string value
Console.WriteLine("Random element: {0}. String value: {1}.", mot, motString);

来自Microsoft Random.Next documentation

  

Next(Int32,Int32)重载返回从minValue到maxValue的随机整数 - 1.但是,如果maxValue等于minValue,则该方法返回minValue。