Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# UInt64.MinValue 필드 완벽 정리: 개념, 문법, 실전 예제

C#에서 UInt64.MinValue 필드는 64비트 부호 없는 정수(ulong)가 가질 수 있는 최솟값을 나타냅니다. 부호 없는 정수는 음수를 표현할 수 없기 때문에, 이 필드의 값은 항상 0입니다.

문법(Syntax)

UInt64.MinValue 필드의 선언 문법은 다음과 같습니다.

public const ulong MinValue = 0;

이 필드는 const로 선언된 상수이므로, 컴파일 시점에 값이 고정되며 별도의 인스턴스 생성 없이 UInt64.MinValue 형태로 직접 참조할 수 있습니다.

주요 특징

  • 데이터 타입: ulong(64비트 부호 없는 정수)
  • 값: 0 (부호 없는 정수의 최솟값)
  • 반대 개념: UInt64.MaxValue (최댓값, 18,446,744,073,709,551,615)

예제 1: 기본 사용법

다음 예제는 UInt64.MinValue 필드를 활용하는 기본적인 방법을 보여줍니다.

using System;
public class Demo {
   public static void Main(){
      ulong val1 = 879879879;
      ulong val2 = 464556565;
      Console.WriteLine("Value1 = "+val1);
      Console.WriteLine("Value2 = "+val2);
      Console.WriteLine("HashCode for value1 = "+val1.GetHashCode());
      Console.WriteLine("HashCode for value2 = "+val2.GetHashCode());
      Console.WriteLine("Are they equal? = "+(val1.Equals(val2)));
      TypeCode type1 = val1.GetTypeCode();
      TypeCode type2 = val2.GetTypeCode();
      Console.WriteLine("TypeCode for val1 = "+type1);
      Console.WriteLine("TypeCode for val2 = "+type2);
      Console.WriteLine("Minimum Value = "+ UInt64.MinValue);
   }
}

실행 결과

위 코드를 실행하면 다음과 같은 출력 결과를 얻을 수 있습니다.

Value1 = 879879879
Value2 = 464556565
HashCode for value1 = 879879879
HashCode for value2 = 464556565
Are they equal? = False
TypeCode for val1 = UInt64
TypeCode for val2 = UInt64
Minimum Value = 0

출력 결과에서 확인할 수 있듯이, 두 값은 서로 다르며(Equals 결과가 False) TypeCode는 모두 UInt64로 반환됩니다. 마지막 줄에서 UInt64.MinValue의 값이 0으로 출력되는 것을 볼 수 있습니다.

예제 2: 범위 검증에 활용하기

UInt64.MinValue는 값이 유효한 ulong 범위 내에 있는지 검사할 때 유용하게 사용됩니다. 아래 예제는 배열의 각 요소가 최솟값과 최댓값 사이에 있는지 확인한 후 변환을 수행합니다.

using System;
public class Demo {
   public static void Main(){
      ulong[]val = {65, 6576, 9897987987};
      ulong res;
      foreach(ulong a in val){
         if(a >= UInt64.MinValue && a <= UInt64.MaxValue){
            res = Convert.ToUInt64(a);
            Console.WriteLine("Converted: "+res);
         } else {
            Console.WriteLine("Not Possible");
         }
      }
   }
}

실행 결과

배열의 모든 값이 유효 범위 내에 있으므로, 모두 성공적으로 변환됩니다.

Converted: 65
Converted: 6576
Converted: 9897987987

정리

UInt64.MinValue 필드는 64비트 부호 없는 정수의 하한 경계인 0을 상수로 제공합니다. 입력값 검증, 범위 체크, 안전한 형 변환 등의 상황에서 UInt64.MaxValue와 함께 사용하면 코드의 안정성과 가독성을 높일 수 있습니다.