j#相当于c#中的join()和toString()?

时间:2009-09-18 07:47:29

标签: c# string

c#中的任何方法都相当于javascript join() ..

   var keyStr = keyList.join("_");

我的要求是使用给定的分隔符将字符串数组连接成一个字符串。

我想将整个字符串数组转换为单个字符串...在javascript中我们可以通过调用jabvascript数组的 toString()来完成此操作

数组的C#toString只打印类型信息。如果我们在其他类型(如int)上使用toString,则返回int的字符串表示形式。但是为什么在String数组中没有实现它。不会那么奇怪吗?

并且

3 个答案:

答案 0 :(得分:33)

您可以使用string.Join()

string.Join("_", array);

或者,对于列表:

string.Join("_", list.ToArray());

将字符串数组转换为单个字符串的方式完全相同:使用string.Join()

string.Join(" ", stringarray);

Dan Elliott还有一个很好的扩展方法,您可以使用它来更接近JavaScript,语法方面。

答案 1 :(得分:2)

如果您希望将功能添加到字符串数组,则可以使用扩展方法

public static class ArrayExtension
{

  public static string AsString(this string[] array, string seperator)
  {
    return string.Join(seperator, array);
  }
}

然后你会写:

var keyStr = keyList.AsString("_");

答案 2 :(得分:0)

尝试以下代码。

 string[] arr=new string[]{"aa","bb","cc"};
 string.Join("-", arr);