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

C# UInt64.MaxValue 필드 완벽 가이드: 예제 코드로 배우기

C# UInt64.MaxValue 필드란?

C#에서 UInt64.MaxValue 필드는 64비트 부호 없는 정수(ulong)가 가질 수 있는 최댓값을 나타냅니다. 이 값은 18446744073709551615이며, ulong 형식으로 표현할 수 있는 가장 큰 숫자입니다. 값의 유효성 검사나 범위 확인 로직을 작성할 때 매우 유용하게 활용됩니다.

구문(Syntax)

UInt64.MaxValue 필드의 구문은 다음과 같습니다:

public const ulong MaxValue = 18446744073709551615;

예제 1: UInt64.MaxValue 기본 사용법

다음 예제는 두 개의 ulong 값에 대한 해시 코드, 동등성 비교, TypeCode 그리고 최댓값을 함께 출력하는 방법을 보여줍니다:

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("Maximum Value = "+ UInt64.MaxValue);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 출력이 생성됩니다:

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

예제 2: 범위 검증 후 값 변환하기

다음 예제는 UInt64.MinValue와 UInt64.MaxValue를 활용해 배열의 각 요소가 유효한 ulong 범위 내에 있는지 확인한 뒤, 조건을 만족하는 경우 Convert.ToUInt64() 메서드로 값을 변환하는 과정을 보여줍니다:

using System;
public class Demo {
   public static void Main(){
      ulong[]val = {8998, 899898778, 878787878};
      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: 8998
Converted: 899898778
Converted: 878787878

정리

UInt64.MaxValue 필드는 ulong 데이터 형식이 표현할 수 있는 최대 경계값을 상수 형태로 제공합니다. const 필드로 선언되어 있어 런타임 성능에 영향을 주지 않으며, 입력값 검증, 오버플로우 방지, 형식 변환 전 범위 확인 등 다양한 상황에서 안전하고 효율적으로 사용할 수 있습니다.