문제

Java에서 java.util.Arrays 클래스에는 여러 정적이 있습니다 toString(...) 배열을 가져 와서 문자열 표현을 반환하는 방법 (즉, 쉼표로 분리 된 배열의 내용의 문자열 표현과 사각형 괄호로 둘러싸인 전체 표현 - 예를 들어 [1, 2, 3]).

.NET에 동등한 메소드/기능이 있습니까?

배열을 통해 반복하기 위해 루프/메소드를 수동으로 구성하지 않고도이 작업을 수행하는 방법을 찾고 있습니다.

도움이 되었습니까?

해결책

그만큼 String.join 방법.

정사각형 괄호를 직접 추가해야합니다

다른 팁

이 시도. NULL 값을 처리하지는 않지만 값 유형 및 참조 유형에 대해 작동합니다. 확장 메소드이므로 모든 배열 인스턴스에서 .toElementString ()을 호출 할 수 있습니다.

public static string ToElementString<T>(this T[] array) {
  var middle = array.Select(x => x.ToString().Aggregate((l,r) => l+","+r);
  return "[" + middle + "]";
}

다음은 빌더를 사용하고 잠재적으로 좀 더 효율적일 수있는 버전입니다 (프로파일 러만 확실히 알고 있습니다). 또한 널 값을 올바르게 처리합니다.

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();
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top