본문 바로가기

코딩/자바 코딩(JAVA coding)

자바 기본 타입 코딩 배우기(바이트 타입, long 타입)

정수리터럴

자바에서 가장 기본이 되는 타입은 무엇이라 할 수 있을까요? 그렇습니다! 바로 '정수타입'이 가장 기본적인 타입이라고 할 수 있는데요! 

아래에 정수타입이 적혀져 있으니 참고하시면서 보시면 될 것 같습니다! 

public class Main
{
	public static void main(String[] args) {
	    int var1 = 0b1111;
	    int var2 = 0214;
	    int var3 = 254;
	    int var4 = 0xC3;
	    
	    System.out.println("var1: " + var1);
	    System.out.println("var2: " + var2);
	    System.out.println("var3: " + var3);
	    System.out.println("var4: " + var4);
	}
}

위 타입을 보시면 아시겠지만, int 타입 변수를 사용하신 걸 확인하실 수 있으실 겁니다! 이렇게 '정수 리터럴' 타입을 사용하실 수 있습니다!

 

그리고 추가로 말씀드리자면, 위에 int var 부분에서 var는 언제든지 다른 이름으로 변경해줄수 있습니다! 예를들어 'hub'로 변경할 수도 있어요! 

그리고 '정수리터럴' 타입 같은 경우에는 제가 '이진수'를 사용해서 예시를 들어드린 점 감안해주시기 바랍니다.

 

byte 타입 변수(바이트 타입 변수)

다음으로 가장 작은 타입의 byte(바이트) 타입을 예시를 예시로 들어드릴 텐데, 두 가지 예시를 들어드리도록 하겠습니다. 

 

하나는 정상적으로 결과가 나오는 바이트 타입 변수를 보여드리고 오류가 나오는 결과도 보여드리겠습니다. 

 

  •  정상적인 바이트 타입 변수
public class Main
{
	public static void main(String[] args) {
	    byte var1 = -128;
	    byte var2 = -50;
	    byte var3 = 0;
	    byte var4 = 50;
	    byte var5 = 127; /* 바이트 타입 같은 경우에는 127까지만, 저장되기 때문에 127을 넘길 경우 오류 컴파일로 인식하게 됩니다! */
	    
	    System.out.println("var1: " + var1);
	    System.out.println("var2: " + var2);
	    System.out.println("var3: " + var3);
	    System.out.println("var4: " + var4);
	    System.out.println("var5: " + var5);
	}
}

이렇게 위 자바 코딩처럼 하 실 경우에는 결과가 제대로 나오게 되는데, 그 결과는 아래 사진에서 보여드리도록 하겠습니다. 

자바 byte 타입 변수 코딩 결과입니다.

 

  •  비정상적인 바이트 타입 변수
public class Main
{
	public static void main(String[] args) {
	    byte var1 = -138;
	    byte var2 = -50;
	    byte var3 = 0;
	    byte var4 = 50;
	    byte var5 = 138; /* 바이트 타입 같은 경우에는 127까지만, 저장되기 때문에 127을 넘길 경우 오류 컴파일로 인식하게 됩니다! */
	    
	    System.out.println("var1: " + var1);
	    System.out.println("var2: " + var2);
	    System.out.println("var3: " + var3);
	    System.out.println("var4: " + var4);
	    System.out.println("var5: " + var5);
	}
}

위에 처럼 코딩을 하시게 될 경우 아래와 같은 결과가 나오게 되는데요! 보여드리도록 하겠습니다.

바이트 타입의 변수가 오류가 나오게 되는 경우의 결과입니다.

이처럼 var1의 수가 -138이라서 오류가 나오게 되어 버리는 것이고, var5의 수 역시 127을 넘기게 되어서 오류가 났다고 표시가 되었습니다! 

long 타입 변수

long 타입 변수 같은 경우에는 정상적인 버전과 비정상적인 버전을 통해 알려드리도록 하겠습니다. 

  •  정상적인 바이트 타입 변수
public class Main
{
	public static void main(String[] args) {
	    long var1 = -2147483648;
	    long var2 = 0;
	    long var3 = 2147286647;
	    
	    System.out.println("var1: " + var1);
	    System.out.println("var2: " + var2);
	    System.out.println("var3: " + var3);
	}
}

위 코드 같은 경우 정상적으로 출력되는 경우를 보여드린 것입니다. 

long 타입 변수가 정상적으로 출력되는 결과 화면입니다.

 

  •  비정상적인 버전 
{
	public static void main(String[] args) {
	    long var1 = -2147493648;
	    long var2 = 0;
	    long var3 = 2147289647;
	    
	    System.out.println("var1: " + var1);
	    System.out.println("var2: " + var2);
	    System.out.println("var3: " + var3);
	}
}

위 코드 같은 경우에 직접 해보시면 아시겠지만, 오류가 나실 겁니다.

long 타입의 오류가 나는 경우 결과 사진입니다. 

이런식으로 오류가 나오게 되는데요. 그 이유는 일정 숫자를 넘어버렸기 때문에 오류가 나는 것입니다. 

long 타입 같은 경우에는 -2.147.483.648 부터 2.147.483.647까지 가능한데, 만약에 여기서 굳이 3.000.000.000을 입력하시고 싶으시다면, 뒤에 L을 붙여 주시면 되는데, 아래에서 보여드리도록 하겠습니다. 

public class Main
{
	public static void main(String[] args) {
	    long var1 = -3000000000L;
	    
	    System.out.println("var1: " + var1);
	}
}

이런식으로 뒤에 L을 붙여주신다면 정상적으로 아래 사진과 같이 출력이 되실 겁니다.

long  숫자에 L을 붙여서 결과가 성공적으로 나오는 경우의 결과입니다. 

 

반응형