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

C#의 UInt64.MinValue 필드 완벽 가이드: 예제 코드와 실행 결과

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

구문

UInt64.MinValue 필드의 기본 구문은 다음과 같습니다.

public const ulong MinValue = 0;

예제 1: UInt64.MinValue 값 확인하기

다음 예제에서는 두 개의 ulong 변수를 선언하고 해시 코드, 동등성 비교, TypeCode 그리고 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

출력 결과에서 볼 수 있듯이, UInt64.MinValue는 예상대로 0을 반환합니다. 또한 GetHashCode() 메서드는 ulong 값 자체를 해시 코드로 반환하며, 두 변수의 값이 다르므로 Equals() 비교 결과는 False가 됩니다.

예제 2: 값의 유효 범위 검사 후 변환하기

다음 예제에서는 ulong 배열의 각 요소가 UInt64.MinValue부터 UInt64.MaxValue 사이의 유효한 범위에 속하는지 검사한 후, 조건을 만족하면 Convert.ToUInt64() 메서드로 변환하여 출력합니다.

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는 ulong 타입이 표현할 수 있는 가장 작은 값인 0을 상수 형태로 제공합니다. 이 필드는 값의 유효 범위를 검사하거나 경계 조건을 명확하게 표현할 때 유용하게 활용할 수 있으며, 반대되는 개념으로 최댓값을 나타내는 UInt64.MaxValue(18,446,744,073,709,551,615)도 함께 기억해 두면 좋습니다.