【问题标题】:C# How to make a return function?C#如何制作返回函数?
【发布时间】:2016-08-13 09:23:07
【问题描述】:

所以我有一个问题。我正在尝试制作function witch returns a number,但问题是我无法将int 转换为string。我的函数如下所示:

    static string EnemyDmg(EnemyDmg _dmg)
    {
        string result = "";
         int EnemyDmg
             = CharAttack - EnemyDefense;
        if (EnemyDmg < 1)
            EnemyDmg = 4;
        result = EnemyDmg;
        return result;
    }

但它应该这样做

     int EnemyDmg
          = CharAttack - EnemyDefense;
     if (EnemyDmg < 1)
     EnemyDmg = 4;
     Console.WriteLine(EnemyName + "  takes  " + EnemyDmg + "  Damage");

有人有想法吗?

PS:4 只是一个随机数。

【问题讨论】:

  • 呃,result=EnemyDmg.ToString(); ?
  • 这些变量和函数的名字非常糟糕。
  • 如果你想让函数返回一个数字那么你为什么要返回一个字符串?字符串是文本,而不是数字。

标签: c# function


【解决方案1】:

应该是static int EnemyDmg(EnemyDmg _dmg)。您应该返回一个 int,并在需要时转换为函数 i 之外的字符串

无论如何,要将 String s 转换为 int i:

int i = Int32.Parse(s);

将 int i 转换为字符串 s

string s = i.ToString();
string s = ""+i; // more "java-like"

【讨论】:

【解决方案2】:

这个问题有点含糊;我不知道你为什么这样做。

您可以使用 .ToString() 方法将 C# 整数转换为字符串,如下所示:

int a = 12;
string aString = a.ToString();
Console.WriteLine(a);

https://dotnetfiddle.net/sMC3hU

【讨论】:

    猜你喜欢
    • 2017-03-26
    • 2019-02-08
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-17
    • 2015-10-31
    相关资源
    最近更新 更多