programing tip

C # 빈 문자열 배열 선언

itbloger 2020. 6. 27. 11:44
반응형

C # 빈 문자열 배열 선언


빈 문자열 배열을 선언해야 하며이 코드를 사용하고 있습니다

string[] arr = new String[0]();

그러나 "방법 이름이 예상됩니다"라는 오류가 발생합니다.

뭐가 문제 야?


이 시도

string[] arr = new string[] {};

구문이 잘못되었습니다 :

string[] arr = new string[]{};

또는

string[] arr = new string[0];

.net 4.6을 사용하는 경우 사용할 수있는 몇 가지 새로운 구문이 있습니다.

using System;  // To pick up definition of the Array class.

var myArray = Array.Empty<string>();

당신은 이것을 시도 할 수 있습니다

string[] arr = {};

배열의 생성자는 다릅니다. 빈 문자열 배열을 만드는 방법은 다음과 같습니다.

var arr = new string[0];
var arr = new string[]{};
var arr = Enumerable.Empty<string>().ToArray()

(죄송합니다, 모바일)


그 곱슬 곱슬 한 것들은 때로는 기억하기 어렵 기 때문에 훌륭한 문서가 있습니다 .

// Declare a single-dimensional array  
int[] array1 = new int[5];

구문이 유효하지 않습니다.

string[] arr = new string[5];

그러면이 arr배열의 모든 요소가있는 참조 된 문자열 배열 이 생성 됩니다 null. (문자열은 참조 유형 이므로 )

이 배열에는에서까지의 요소가 포함 arr[0]됩니다 arr[4]. new연산자 배열을 생성하고 기본값으로 배열 요소를 초기화하기 위해 사용된다. 이 예에서 모든 배열 요소는로 초기화됩니다 null.

Single-Dimensional Arrays (C# Programming Guide)


빈 배열을 만들어야하는 경우 다음을 수행 할 수 있습니다.

string[] arr = new string[0];

당신이 크기를 모른다면 다음 List<string>과 같이 사용할 수도 있습니다.

var valStrings = new List<string>();

// do stuff...

string[] arrStrings = valStrings.ToArray();

다음은 잘 작동합니다.

string[] arr = new string[] {""};

참고 URL : https://stackoverflow.com/questions/16834245/c-sharp-declare-empty-string-array

반응형