java中java.util.Array.toString(…)方法的.NET等价物

java中java.util.Array.toString(…)方法的.NET等价物,java,.net,arrays,comparison,Java,.net,Arrays,Comparison,在Java中,Java.util.Arrays类有几个静态的toString(…)方法,这些方法接受数组并返回其字符串表示形式(即数组内容的字符串表示形式,用逗号分隔,整个表示形式用方括号括起来,例如“[1,2,3]”) NET中是否有等效的方法/功能 我正在寻找一种方法,这种方法不需要手动构造循环/方法来遍历数组 [您需要自己添加方括号]试试这个。它不会处理空值,但可以处理值类型和引用类型。因为它是一个扩展方法,您可以在任何数组实例上调用.ToElementString() public st

在Java中,
Java.util.Arrays
类有几个静态的
toString(…)
方法,这些方法接受数组并返回其字符串表示形式(即数组内容的字符串表示形式,用逗号分隔,整个表示形式用方括号括起来,例如“[1,2,3]”)

NET中是否有等效的方法/功能

我正在寻找一种方法,这种方法不需要手动构造循环/方法来遍历数组


[您需要自己添加方括号]

试试这个。它不会处理空值,但可以处理值类型和引用类型。因为它是一个扩展方法,您可以在任何数组实例上调用.ToElementString()

public static string ToElementString<T>(this T[] array) {
  var middle = array.Select(x => x.ToString().Aggregate((l,r) => l+","+r);
  return "[" + middle + "]";
}
公共静态字符串到元素字符串(此T[]数组){
var middle=array.Select(x=>x.ToString().Aggregate((l,r)=>l+“,”+r);
返回“[”+中间+“]”;
}
这是一个使用构建器的版本,可能会更高效一些(只有探查器才能确定)。它还将正确处理空值

public static string ToElementString<T>(this T[] array) {
  var builder = new StringBuilder();
  builder.Append('[');
  for(int i =0; i < array.Length; i++ ) {
    if ( i > 0 ) {
      builder.Append(',');
    }
    builder.Append(array[i]);
  }
  builder.Append(']');
  return builder.ToString();
}
公共静态字符串到元素字符串(此T[]数组){
var builder=新的StringBuilder();
builder.Append('[');
for(int i=0;i0){
builder.Append(',');
}
Append(数组[i]);
}
builder.Append(']');
返回builder.ToString();
}

此解决方案仅在数组已为string.True类型时有效。我曾假设这就是所要求的。@Mitch,基于[1,2,3]示例,我以为他在寻找更一般的解决方案。但他接受了你的解决方案,因此我将其向后推。