C#에서 int? , bool? , DataTime? 와 같은 T?의 표현은 .NET의 Nullable<T>와 같은 표현이다.
double _Sum = 0;
DateTime _Time;
bool? _Selected;
public void CheckInput(int? i, double? d, DateTime? time, bool? selected)
{
if (i.HasValue && d.HasValue)
this._Sum = (double)i.Value + (double)d.Value;
// time값이 있는 체크.
if (!time.HasValue)
throw new ArgumentException();
else
this._Time = time.Value;
// 만약 selected가 NULL이면 false를 할당
this._Selected = selected ?? false;
void NullableTest()
{
int? a = null;
int? b = 0;
int result = Nullable.Compare<int>(a, b);
Console.WriteLine(result); //결과 -1
double? c = 0.01;
double? d = 0.0100;
bool result2 = Nullable.Equals<double>(c, d);
Console.WriteLine(result2); //결과 true
}
[C#] 동적 컴파일 (0) | 2023.07.18 |
---|---|
.NET Serialization 닷넷 객체직렬화 (0) | 2023.07.18 |
[C#] Interface로 구현한 폼 간 값전달 (0) | 2023.07.18 |
[c# 키워드] Lambda Expression => (0) | 2023.07.18 |
[c# 키워드] delegate (0) | 2023.07.18 |