创建一个返回字符串列表的方法

本文关键字:字符串 列表 方法 返回 一个 创建 | 更新日期: 2023-09-27 17:50:00

好的,所以我有一个List的字符串在一个对象中可用。但对象中不止这些字符串。但我只需要这些字符串作为List<string>传递给方法。如何得到这些字符串?

例如,我有以下对象_Home

里面有大量的信息可以获取。但是我只需要以下字符串:

_Home.String1
_Home.String2
_Home.String3
_Home.String4
_Home.String5
_Home.String6

而不是创建一个new List<string>()并分别将每个值添加到其中,是否有一种方法可以为此创建一个方法,以便能够做这样的事情?

List<String> theStrings = CreateStringList(_Home.String1, _Home.String2, _Home.String3, _Home.String4, _Home.String5, _Home.String6);

然后将theStrings传递给另一个方法,比如:LoadData(theStrings)

我希望能够使用这个List如下:

private void LoadData(List<string> theStrings)
{
    theStrings.String1;
    theStrings.String2;
    // etc. etc.
}

创建一个返回字符串列表的方法

创建List<string>的方法如下:

var theStrings = new List<string>{ _Home.String1, 
                                   _Home.String2,
                                    _Home.String3,  
                                    _Home.String4,  
                                    _Home.String5
                          }; 

更新:

传递给另一个方法时,它会给你一个没有名字的字符串列表。如果你需要按名称访问每个字符串,你可以使用字典,但这会让整个事情变得更复杂。

如果你知道字符串提供的顺序,你可以通过它们的索引号来访问它们(我从你的评论中理解这是可以接受的?):

public void YourMethod(List<string> theStringsParam){
    var firstString = theStringsParam[0];
    var secondString = theStringsParam[1];
    // etc...
}

我可能在这里遗漏了一些东西,但是你所说的你想要的:

<>之前列表的字符串= CreateStringList(_Home。String1,_Home。_Home String2相等。String3 _Home。沙漠西部边缘一溜排开,_Home。String5 _Home.String6);之前

可能不需要另一个函数就可以声明…这就是我在想的:

<>之前var theStrings = new List{_Home;String1 _Home。String2相等,_Home。String3 _Home。沙漠西部边缘一溜排开,_Home。String5 _Home.String6};

也许哈希表会更好?

类似:

Hashtable theStrings = new Hashtable();
theStrings.Add("String1", _Home.String1);
theStrings.Add("String2", _Home.String2);

或使用集合初始化式:

Hashtable theStrings = new Hashtable() {
    {"String1", "String1"},
    {"String2", "String2"}
};

那么你可以这样使用:

private void LoadData(Hashtable theStrings)
{
    theStrings["String1"];
    theStrings["String2"];
    // etc. etc.
}