当您按下按钮时,它会为最小值和最大值生成两个随机数。我需要将数字放在一个列表中并选择一个随机数来显示在标签中。 if语句不会打印错误消息,它给出了错误“输入字符串没有以正确的格式放置”。此外,我已经尝试将随机数放在一个列表中,我只是无法弄明白。提示或建议将受到很多赞赏。谢谢
private void GoButton_Click(object sender, EventArgs e)
{
Random r = new Random();
int min = r.Next();
int max = r.Next();
MinLabel.Text = min.ToString();
MaxLabel.Text = max.ToString();
RandomValueLabel.Text = (MinOrMax(min, max)).ToString();
Between(min, max);
ListValueLabel.Text = Between(min, max).ToString();
}
private int MinOrMax(int min, int max)
{
if (min > max)
{
string message;
message = Convert.ToInt32("Min is greater than Max. Please press go again");
return message;
}
else
{
int answer;
answer = min * max;
return answer;
}
}
private int Between(int min, int max)
{
List<int> BetweenList = new List<int>(max);
for (int i = min; i < max; i++)
{
var swap = randomnum.Next(i - 1);
BetweenList.Add(BetweenList[swap]);
BetweenList[swap] = i;
}
//return integer
}
答案 0 :(得分:2)
您无法将字符串DocumentRoot C://xampp/htdocs/3H-Web-Wlements/
转换为"Min is greater than Max. Please press go again"
值。
如果您希望方法的结果最后成为字符串,只需返回int
而不是string
。
int
答案 1 :(得分:0)
如果您想要一条错误消息,如果您的条件不匹配,您可以抛出异常,如下所示。顺便说一句,我不会评论返回值的逻辑。
private int MinOrMax(int min, int max)
{
if (min > max)
{
throw new Exception ("Min is greater than Max. Please press go again");
}
else
{
int answer;
answer = min * max;
return answer;
}
}
如何使用
private void YourFunction()
{
// your code
try
{
int getMinOrMax = MinOrMax(yourmin, yourmax);
// do your stuff
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
// your code
}
理想情况下,您可以编写自己的Exception,但是为了这个示例。我将使用Exception类