从字符串转换为int?

时间:2014-01-23 12:33:38

标签: c#

我刚开始编码,我正在寻找一个简单的高/低游戏。 我有一个随机起始编号,并在单击“更高”或“更低”按钮时设置新编号。我想说的是......

如果此人点击了更高的按钮:如果NewNumberLbl大于round1numberlbl。然后做点什么。事情是我无法说出的问题

If {NewNumberLbl.Text > Round1NumberLbl.Text}
{}

因为我收到了错误:

  

错误1运营商'>'不能应用于'string'和'string'

类型的操作数

那么如何解决这个问题并将其变成int类型?

Ps我试图创建新的int,将它们与随机数方法中的int相关联,然后再调用它们?

HELP!

public Round1()
{
    InitializeComponent();
    RandomNumber(0, 12);
    NewNumberLbl.Visible = true;
}

public void RandomNumber(int min, int max)
{
    int num = new Random().Next(min, max);
    Round1NumberLbl.Text = num.ToString();
}

public void RandomNumber2(int min, int max)
{
    int num2 = new Random().Next(min, max);
    NewNumberLbl.Text = num2.ToString();
}

private void Round1HBtn_Click(object sender, EventArgs e)
{
    //RandomNumber2(0, 12);
    //if (newNumber >= originalNumber) 
    //{

    //}
}

5 个答案:

答案 0 :(得分:3)

将字符串转换为int:

int i;
if (int.TryParse("1234", out i){
    //ok
}

答案 1 :(得分:2)

您可以使用:

Convert.ToInt32(myString);

或:

int myOut;
int.TryParse(myString, out myOut);

如果您尝试转换在int中不可解析的内容,第一个将抛出异常。

如果转换不成功,第二个将导致0

答案 2 :(得分:1)

http://msdn.microsoft.com/en-us/library/bb397679.aspx 试试这个:- Convert.ToInt32(输入);

示例:

if (Convert.ToInt32(LblnewNumber.Text) >= Convert.ToInt32(LbloriginalNumber.Text)) 
        {

        }

答案 3 :(得分:0)

int.Parse(NewNumberLbl.Text);

但是,您应确保标签上有数字,而不是其他字符。

答案 4 :(得分:0)

string text = "500";
int num = int.Parse(text);

这应该有效。并且您可以使用TryParse检查“文本”是否有效