Java의 Byte 클래스는 Number 클래스의 하위 클래스로, 기본 타입(primitive type)인 byte 값을 객체 형태로 감싸는 래퍼(wrapper) 클래스입니다. Byte 타입의 객체는 byte 타입의 필드를 하나만 가지고 있습니다.
Byte 클래스가 제공하는 주요 메서드로는 byteValue(), compare(), compareTo(), decode(), parseByte(), valueOf() 등이 있습니다. 그중 decode() 메서드와 byteValue() 메서드를 함께 사용하면 16진수 값을 손쉽게 byte 타입으로 변환할 수 있습니다.
클래스 선언 구문
public final class Byte extends Number implements Comparable<Byte>
예제 코드
아래 예제는 Byte.decode("0x0a")를 사용하여 16진수 문자열 "0x0a"를 Byte 객체로 변환한 뒤, byteValue() 메서드로 기본 타입 byte 값을 추출하는 과정을 보여줍니다.
public class ConvertHexaDecimalToByte {
public static void main(String args[]) {
// 16진수 값을 byte로 변환합니다.
byte b = Byte.decode("0x0a").byteValue();
System.out.println(b);
}
}실행 결과
16진수 "0x0a"는 십진수로 10에 해당하므로, 프로그램 실행 시 다음과 같은 결과가 출력됩니다.
10
참고 사항
decode() 메서드는 "0x", "0X" 접두사가 붙은 문자열은 16진수로, "0" 접두사가 붙은 문자열은 8진수로 해석합니다. 접두사가 없으면 10진수로 처리되므로, 변환하려는 진법에 맞게 문자열 형식을 지정해야 합니다.