如何在c#中初始化、赋值和返回字符串数组

问题描述 投票:0回答:4

我正在尝试将以下代码放入我的一个项目中。但在将字符串分配给数组时会抛出错误。你能告诉我我做错了什么吗?

Public string[] ReturnStringArray()
{
   string[] sArray = new string[]{};
   try
   {    
      string str1 = "hi";
      string str2 = "this";
      string str3 = "is";
      string str4 = "sample array";
      sArray = {str1 , str2 , str3 , str4} //There is an error here
   }
   catch { throw new exception; }
   return sArray;
}
c# arrays string
4个回答
2
投票

您可以这样声明数组的值:

string[] sArray = new string[5]; //Declare its length number
sArray[0] = "hi"  // or sArray[0] = str1 

或者你也可以这样做:

string[] sArray = new string[] {"hi", "hello", "foo"};

或者你也可以这样做:

string str1 = "hi";
string str2 = "this";
string str3 = "is";
string str4 = "sample array";
string[] sArray = {str1, str2, str3, str4};

1
投票

将字符串添加到字符串列表并将最终的字符串列表转换为数组

        public string[] ReturnStringArray()
        {

        List<string> slist = new List<string>();

        string str1 = "hi";
        string str2 = "this";
        string str3 = "is";
        string str4 = "sample array";

        slist.Add(str1);
        slist.Add(str2);
        slist.Add(str3);
        slist.Add(str4);

        return slist.ToArray();
        }

0
投票

Arrays 不支持这样的添加。首先,您需要在填充索引之前设置数组最大长度...

也许可以使用

List<string>
并返回。之后仍然需要字符串数组,您将使用
List.ToArray()


-1
投票

请查找以下更改,您已像这样立即将项目添加到数组中

public string[] ReturnStringArray()
{
    string[] sArray;
    try
    {
        string str1 = "hi";
        string str2 = "this";
        string str3 = "is";
        string str4 = "sample array";
        sArray = new string[] { str1, str2, str3, str4 };
    }
    catch(Exception e) { throw e; }
    return sArray;
}
© www.soinside.com 2019 - 2024. All rights reserved.