C#의 IsNullOrEmpty() 메서드는 지정된 문자열이 null이거나 빈 문자열("")인지 여부를 확인하는 데 사용됩니다. 해당 문자열이 null이거나 빈 문자열이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
구문
구문은 다음과 같습니다.
public static bool IsNullOrEmpty (string val);
여기서 매개변수 val은 검사 대상이 되는 문자열입니다.
예제 1: 일반 문자열과 공백 문자열 검사
먼저 값이 있는 문자열과 공백이 포함된 문자열을 검사해 보겠습니다.
using System;
public class Demo {
public static void Main(){
string str1 = "Amit";
string str2 = " ";
Console.WriteLine("string1이 null 또는 빈 문자열인가요? = " + string.IsNullOrEmpty(str1));
Console.WriteLine("string2가 null 또는 빈 문자열인가요? = " + string.IsNullOrEmpty(str2));
}
}
출력
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
string1이 null 또는 빈 문자열인가요? = False string2가 null 또는 빈 문자열인가요? = False
str1에는 실제 값("Amit")이 들어 있고, str2에는 공백 한 개가 포함되어 있습니다. 공백도 하나의 유효한 문자로 취급되기 때문에 두 경우 모두 빈 문자열이 아니며, 따라서 false가 반환됩니다.
예제 2: null 문자열과 String.Empty 검사
이번에는 null 값과 String.Empty를 검사하는 예제입니다.
using System;
public class Demo {
public static void Main(){
string str1 = null;
string str2 = String.Empty;
Console.WriteLine("string1이 null 또는 빈 문자열인가요? = " + string.IsNullOrEmpty(str1));
Console.WriteLine("string2가 null 또는 빈 문자열인가요? = " + string.IsNullOrEmpty(str2));
}
}
출력
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
string1이 null 또는 빈 문자열인가요? = True string2가 null 또는 빈 문자열인가요? = True
str1은 null이고 str2는 String.Empty(빈 문자열)이므로 두 경우 모두 true가 반환됩니다.
참고 사항
IsNullOrEmpty()는 공백만으로 이루어진 문자열을 빈 문자열로 간주하지 않습니다. 문자열이 null이거나, 비어 있거나, 공백 문자만 포함하는 경우까지 모두 확인하려면 .NET 4 이상에서 제공하는 String.IsNullOrWhiteSpace() 메서드를 사용하는 것이 좋습니다.