在 C# 中打印列表的值
Printing the value of list in c#
我正在尝试打印列表的值。但它只是打印 address.My 代码的值,如下所示。
class Program
{
static void Main(string[] args)
{
Node n = new Node("a", 12);
Node n1 = new Node("b", 13);
printNode(n);
List<Node> a = printNode(n1);
Console.WriteLine(a.ToString());
Console.ReadLine();
}
public static List<Node> printNode(Node n)
{
List<Node> a = new List<Node>();
a.Add(n);
return a;
}
}
我的节点class是这样的。
class Node
{
public string value;
public double h;
public Node parent;
public Node(string val, double hVal)
{
value = val;
h = hVal;
}
public override string ToString()
{
return value;
}
}
如何像这样打印 [a,b]?
您的代码目前没有多大意义。您将 Node
传递给 printNode
,这实际上创建了一个 新列表 和 returns 它。
如果您只想打印列表中的项目,则需要迭代该列表并打印它的值:
Node n = new Node("a", 12);
Node n1 = new Node("b", 13);
List<Node> nodes = new List<Node> { n, n1 };
Console.WriteLine(string.Join(", ", nodes));
Console.ReadLine();
此处,string.Join
将迭代您的列表并使用 ","
分隔符连接每个值。
我正在尝试打印列表的值。但它只是打印 address.My 代码的值,如下所示。
class Program
{
static void Main(string[] args)
{
Node n = new Node("a", 12);
Node n1 = new Node("b", 13);
printNode(n);
List<Node> a = printNode(n1);
Console.WriteLine(a.ToString());
Console.ReadLine();
}
public static List<Node> printNode(Node n)
{
List<Node> a = new List<Node>();
a.Add(n);
return a;
}
}
我的节点class是这样的。
class Node
{
public string value;
public double h;
public Node parent;
public Node(string val, double hVal)
{
value = val;
h = hVal;
}
public override string ToString()
{
return value;
}
}
如何像这样打印 [a,b]?
您的代码目前没有多大意义。您将 Node
传递给 printNode
,这实际上创建了一个 新列表 和 returns 它。
如果您只想打印列表中的项目,则需要迭代该列表并打印它的值:
Node n = new Node("a", 12);
Node n1 = new Node("b", 13);
List<Node> nodes = new List<Node> { n, n1 };
Console.WriteLine(string.Join(", ", nodes));
Console.ReadLine();
此处,string.Join
将迭代您的列表并使用 ","
分隔符连接每个值。