/*C#에서 Null과 Empty String 차이*/
/*C#에서 <Null String>과 <Empty String> 차이*/
1. string에 null 이거나 ''" (Empty String)일때, 처리하지 않게 하려면, string.IsNullOrEmpty()를 사용하면 됩니다.
if (!string.IsNullOrEmpty(row["TIP_ADJUST"].ToString()))
{
_tip_adjust_total += Convert.ToDecimal(row["TIP_ADJUST"]);
}
2. C#에서 Null과 Empty String 차이
2.1. Empty String
string s = ""; //System.String 객체에 zero문자만을 가진것.
int len = s.Length;; // Number -> 0
2.2. Null String
string s = null;
int len = s.Length;; // NullReferenceExcption 발생(throw).
Tip) if(s==null) s="";
Tip) if(s==null) s="";
Tip) if(s==null) s="";
3. C#의 null 체크하기
string str =null ;
if (str == null) MessageBox.Show("String is null");
4. C#에서 null 또는 string.Empty 체크하기
string str =null;
if (string.IsNullOrEmpty(str)) MessageBox.Show("String is empty or null");
5. Example
class Program
{
public static void Main()
{
StringExCls nm = new StringExCls();
nm.running1();
nm.running2();
}
}
class StringExCls
{
public void running1()
{
string tmp=null; //NULL
if(string.IsNullOrEmpty(tmp))
{
if(tmp==null)
{
Console.WriteLine("NULL");
//tmp.Length call -> NullReferenceException !!!!!!!!
//tmp.Length call -> NullReferenceException !!!!!!!!
//tmp.Length call -> NullReferenceException !!!!!!!!
}
else
{
Console.WriteLine("Empty");
Console.WriteLine("Empty,Length:" + tmp.Length);
}
}
}
public void running2()
{
string tmp=""; //Empty
if(string.IsNullOrEmpty(tmp))
{
if(tmp==null)
{
Console.WriteLine("NULL");
}
else
{
Console.WriteLine("Empty");
Console.WriteLine("Empty,Length:" + tmp.Length);
}
}
}
}
'c# 언어' 카테고리의 다른 글
Console.SetCursorPosition Method try & catch (0) | 2021.11.11 |
---|---|
ShowDialog호출시 SubForm에서 데이타 받기(set,get) (0) | 2021.11.10 |
가비지 컬렉션 (Garbage Collection) (0) | 2021.11.03 |
TimeSpan structure(구조체) (0) | 2021.10.29 |
Java와 .NET의 차이점 (0) | 2021.10.26 |