无法隐式将类型'int'转换为'string' C# 类

6
我正在尝试制作一个程序,可以从类中调用像加法这样的操作。
我不知道为什么会出现错误:
public string Add() {
    string AdditionTotal;
    int num1 = int.Parse(txtFirstNumber.Text);
    int num2 = int.Parse(txtSecondNumber.Text);
    AdditionTotal = num1 + num2; //throws an error here           
    return AdditionTotal;
}

public string SetText {
    get {
        return txtFirstNumber.Text;
    }
    set {
        txtFirstNumber.Text = value;
    }
}
4个回答

13

试试这样做

AdditionTotal = (num1 + num2).ToString(); 

num1num2都是int类型,它们的和也是一个int类型。

C#不能直接将它从int转换为string

您需要通过强制转换才能进行赋值。


0

AdditionTotal 是一个 string 类型,而你正在将 int 赋值给它。将 AdditionTotal 改为 int 类型,并返回 AdditionTotal.ToString()


0

AB= (A + B).ToString(); AB将会存储A和B的和(int类型),并将其转换为字符串。AB将会以字符串格式存储a和b的和,比如a=2,b=3,那么AB="5"。


0

int + int 的结果是一个 int,而您正在尝试将其赋值给一个 string 变量。

AdditionTotal 应该是一个 int,方法的返回类型也应该是一个 int,或者返回 AdditionTotal.ToString()

public int Add(int Total) {
    int AdditionTotal;
    int num1 = int.Parse(txtFirstNumber.Text);
    int num2 = int.Parse(txtSecondNumber.Text);
    AdditionTotal = num1 + num2; //throws an error here

    return AdditionTotal;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接