在满足条件时将字符串数组值作为返回类型字符串传递

时间:2015-05-25 06:57:28

标签: c# arrays string function return-type

我有一个返回字符串数组" string []"的模块。它包含成功代码和作者姓名。

var get_author = SetBookInfo(Id, Name);

此函数 SetBookInfo 返回响应代码和作者姓名。 我的病情是::

  

如果响应代码是"成功"返回作者姓名" william"。 ["成功","威廉"]

     

如果响应代码是"失败"返回"失败"

public string GetAuthorName()
{
    var get_author = SetBookInfo(Id, Name); // returns string[]

    if (get_author != null && get_author.Length > 0)
        {
        // how to write the above logic
        }

    else
        return "problem in accessing the function";
}

我该怎么做?请确认我的方法是否正确。还有其他方法吗?请帮忙。

2 个答案:

答案 0 :(得分:0)

也许这就是你想要的:

public string GetAuthorName()
{
    var get_author = SetBookInfo(Id, Name); // returns string[]

    if (get_author != null && get_author.Length > 0)
        {
            if(get_author[0] == "success") return get_author[1]; //e.g. ["success", "william"], "william" will be returned
            else if (get_author[0] == "failed") return "failed";
        }

    else
        return "problem in accessing the function";
}

提供响应代码索引为0,作者索引为1。

答案 1 :(得分:0)

public string GetAuthorName()
{
string []get_author = SetBookInfo(Id, Name); // returns string[]
if (get_author != null && get_author.Length > 0)
 {
   if(get_author[0].ToLower().Equals("success"))
      return get_author[1];
   else
     return "failed";
  }
else
    return "problem in accessing the function";
}

如果你想返回多个字符串,你可以返回List of strings

public List<string> GetAuthorName()
{
string []get_author = SetBookInfo(Id, Name); // returns string[]
List<string> list=new List<string>();
if (get_author != null && get_author.Length > 0)
 {
   if(get_author[0].ToLower().Equals("success"))
    {
     list.Add("success"); 
     list.Add(get_author[1]);
    }
   else
     list.Add("failed");
  }
else
    list.Add("problem in accessing the function");
 return list;
}