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

时间:2013-06-07 06:24:49

标签: c# xor

    Random randgen = new Random();
    int dkey;
    public object SetScore(int val)
    {
        dkey=randgen.Next(int.MaxValue/2);
        return val ^ dkey;                //^ means XOR.
    }
    public string GetScore(int val)
    {
        return val ^ dkey;
        GC.Collect();
    }

public string GetScore(int val) { return val ^ dkey; GC.Collect(); } return val ^ dkey显示错误

  

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

3 个答案:

答案 0 :(得分:5)

您的GetScore方法返回一个字符串,但val ^ dkey是一个整数。将结果转换为字符串:

return (val ^ dkey).ToString();

或返回一个int:

public int GetScore(int val) ...

哦,请取消对GC.Collect()的电话。自己称呼它几乎不是一个好主意。至少它被小心地放在一个无法到达的地方......

答案 1 :(得分:1)

快速解决方案:

return "" + (val ^ dkey);  

答案 2 :(得分:0)

return (val ^ dkey).ToString()