使用int变量创建字符串列表并随机选择一个

时间:2017-11-09 23:03:12

标签: c# unity3d

我正在尝试在Unity中编码,但我不知道如何制作它。 我的想法是声明int变量,在一个范围内随机生成int。稍后,使用变量创建一个列表并随机选择一个。 最后,在标签中显示结果int。这是我的代码,这是不完整的,也许是错误的:

#Variables
 int low = Random.Range (100, 120);
 int standard = Random.Range (120, 140);
 int high = Random.Range (140, 160);

 #List
 string List = new string { low, standard, high };

 #Pick one random item from the list
 ???

 #Display that item in a label as an int
 ???

我不确定这是否是最有效的方法。另外,可以在标签中显示两个int,其中带有“/”吗?谢谢!

2 个答案:

答案 0 :(得分:0)

首先你要制作错误的字符串数组,使用 int 类型列表:

public List<int> RandomNumbers = new List<int>(); 

然后将每个随机数添加到列表

RandomNumbers.Add(low);
RandomNumbers.Add(standard);
RandomNumbers.Add(high);

//Then select random number from list as int: 

Int pickedNumber = RandomNumbers[Random.Range(0, (myRandomNumber.Count - 1))];

最后显示你的号码

GUILayout.Label(pickedNumber.ToString()); 

答案 1 :(得分:-1)

不知道你的意思,但这是一个如何生成随机数并随机选择它们的完整例子。

public class ExampleClass : MonoBehaviour
{
    public int randomCount = 3;
    public List<int> myRandomNumber = new List<int>();

    [Space(20)]
    public int minRandom = 0;
    public int maxRandom = 255;

    private int pickedNumber; 

    void Start ()
    {
        for (int i = 0; i < randomCount; i++)
        {
            myRandomNumber.Add(Random.Range(minRandom, maxRandom));
        }

        //pick one number randomly
        pickedNumber = myRandomNumber[Random.Range(0, myRandomNumber.Count)];
    }

    void OnGUI ()
    {
        //Display your picked number in game screen
        GUILayout.Label(pickedNumber.ToString());
    }
}

但是生成随机数列表的重点是什么?而您只需生成要使用Random.Range()显示的数字,而不先制作列表。