将列表解析为字符串

时间:2011-06-21 07:53:18

标签: c# string list foreach

也许我太聪明了,但是我有一个方法可以通过一个可枚举的List(Collections)并将它作为一个...........枚举List(Sparkles)返回。

我想将第一个列表(Collections)放在一个处理验证和其他各种职责的类中,否则我会直接处理集合。

我很确定听起来比较难听。因此,该类通过名为 getSparkles()的方法返回一个列表(Sparkles)。

我以为我做了正确的事:

string msg;
List<string> layoutListNames = new List<string>();

foreach (string name in layoutList.getLayout());
{
     msg = "\n" + name;
}

然而,编译器不同意我的看法。

给我一​​个提示。我想学习。

编辑:抱歉。 getLayout()返回List&lt;&gt ;.我删除了分号。 哦/ facepalm。

我在构造函数中编写了这个来测试一个类,忘了更改构造函数的名称以匹配类名。感谢您非常快速的回复。

3 个答案:

答案 0 :(得分:6)

错误的是';'背后     foreach(layoutList.getLayout()中的字符串名称);

删除它,编译器同意..

建议让它变得更好:

string msg = string.Join("\n", layoutListNames);

答案 1 :(得分:2)

首先:您需要在;之后删除foreach。否则,这将是一个空循环语句,并且在下面的块name中将不会被声明。

答案 2 :(得分:1)

然后再试一次......

    static void Main(string[] args)
    {
        string msg = null;
        List<string> layoutListNames = new List<string>() { "test1","test2"};

        foreach (string name in layoutListNames)
        {
            if (msg != null) msg += "\n";
            msg += name;
        }

        Console.WriteLine("at 1:" + msg);

        msg = string.Join("\n", layoutListNames.ToArray());

        Console.WriteLine("at 2:" + msg);

        Console.Read();
    }