每当我调试一段涉及数组或整数、 double 、字符串等列表的代码时,我有时更喜欢将它们打印出来。我为此所做的是为不同类型编写重载的 printArray/printList 方法。
例如
我可能有这3种打印各种类型数组的方法
public void printArray(int[] a);
public void printArray(float[] b);
public void printArray(String[] s);
虽然这对我有用,但我仍然想知道是否可以有一个通用方法来打印任何类型的数组/列表。这也可以扩展到对象数组/列表吗?
有用 String.Join<T>(string separator, IEnumerable<T> values)
方法。您可以传递数组或列表或任何对象的任何可枚举集合,因为对象将通过调用 .ToString()
转换为字符串。 .
int[] iarr = new int[] {1, 2, 3};
Console.WriteLine(String.Join("; ", iarr)); // "1; 2; 3"
string[] sarr = new string[] {"first", "second", "third"};
Console.WriteLine(String.Join("\n", sarr)); // "first\nsecond\nthird"