본문 바로가기
개발자의 공부방/자바 기초

자바 기초] 상수와 리터럴

by 쌈빡한 쥬니준 2019. 3. 6.
반응형

리터럴


1. 상수

  • 리터럴(실제 데이터 값) 또는 값이 변하지 않는 변수
  • final int Cnt = 10; // 선언 시 초기 값을 지정

※ 리터럴과 상수의 차이는??
변수 : 하나의 값을 저장하기 위한 공간
상수 : 값을 한번만 저장할 수 있는 공간
리터럴 : 그 자체로 값을 의미하는 것

즉, 수학적 의미에서의 상수와 같은 의미이다. 용어의 차이라고 생각하면 쉬울 듯.


2. 정수형 리터럴
  • byte, short, int, long
  • l이나 L로 끝나면 long형 (소문자 l 보다는 대문자 L 로 쓰는게 구별하기 쉬워서 통상 L로 씀), 나머지는 int
    • byte와 short는 허용 범위 안에서 int와 호환됨
  • 26L, int형 → 10진수 = 26, 2진수 = 0b11010, 8진수 = 032, 16진수 = 0x1a

3. 실수형 리터럴

  • 소수점이 있는 숫자
  • f나 F로 끝나면 flaot형, 나머지는 double형
  • 123.4f, 123.4, 1.234e2
4. 문자형 리터럴
  • 1개의 문자를 표현하고 16비트 UNICODE로 인코딩됨
  • 단일 따옴표를 사용하고 Unicode 사용 가능
    • '\u0000' ~ '\uFFFF'
    • (0~65536)의 수와 호환됨
  • (char)65, 'A', '\u0041', '가', '\uAC00'



package com.Tutorial.java;
public class JavaPrintf2 {
public static void main(String[] args) {
byte b = 1;
short s = 2;
char c = 'A';
int finger = 10;
long big = 100_000_000_000L; // long big = 100000000L
long hex = 0xFFFF_FFFF_FFFF_FFFFL;
int octNum = 010; // 8진수 10, 10진수로는 8
int hexNum = 0x10; // 16진수 10, 10진수로는 16
int binNum = 0b10; // 2진수 10, 10진수로는 2\
int bxmNum = 0b11010;
int MAX_VALUE = 100;
System.out.printf("b=%d%n", b);
System.out.printf("s=%d%n", s);
System.out.printf("c=%c, %d %n", c, (int)c); //캐스팅을 해서 출력 가능.
System.out.printf("",bxmNum);
System.out.printf("finger=[%5d]%n", finger); // 띄어쓰기 할 때 %5d 지시자+숫자(간격)+d
System.out.printf("finger=[%-5d]%n", finger); // 띄어쓰기의 기준은 무조건 왼쪽부터이며 반대로해야할 경우 - 마이너스 붙임.
System.out.printf("finger=[%05d]%n", finger); // 빈자리수는 위와 동일하지만 공백을 0으로 채우는 것이다. 다른 숫자로는 불가능한듯.
System.out.printf("big=%d%n", big); // long 을 정수로 표현
System.out.printf("hex=%#x%n", hex); // # 은 접두사 (16진수 0x, 8진수 0)
System.out.printf("hex=%#x%n", octNum); // # 은 접두사 (8진수 0)
System.out.printf("octNum=%o, %d%n", octNum, octNum); //옥타 출력, 정수로 출력 : 9
System.out.printf("hexNum=%x, %d%n", hexNum, hexNum); //핵사 출력, 정수로 출력 : 16
System.out.printf("binNum=%s, %d%n", Integer.toBinaryString(binNum), binNum); //불린 출력, 정수로 출력 : 2


반응형

'개발자의 공부방 > 자바 기초' 카테고리의 다른 글

자바 기초] 연산자  (0) 2019.03.07
자바 기초] 형변환  (0) 2019.03.06
자바 기초] 상수와 리터럴  (0) 2019.03.06
자바 기초] 변수와 자료형 그리고 참조형  (0) 2019.03.06
자바 기초] 식별자  (0) 2019.03.06
자바 기초] 자바란?  (0) 2019.03.06

댓글0