[JAVA] 자바기초 – 상수,리터럴,형변환

– 상수(constant)

자바에서 상수는 프로그램에서 변경되지 않는 값으로 정의됩니다. 한 번 값을 할당하면 프로그램 실행 중에 변경할 수 없습니다. 이러한 특성은 프로그램의 가독성을 향상시키고 코드의 유지보수성을 높이는 데 도움이 됩니다. 상수는 final 키워드를 사용하여 정의되며, 전통적으로 상수 이름은 대문자로 작성되며, 단어 사이를 밑줄(_)로 구분합니다. 예를 들어, final int MAX_VALUE = 100;과 같이 상수를 정의할 수 있습니다. 이렇게 정의된 상수는 프로그램에서 값을 변경할 수 없으므로, 프로그램의 여러 부분에서 일관된 값으로 사용될 수 있습니다. 자바에서 상수를 사용함으로써 프로그램의 안정성과 가독성을 향상시킬 수 있습니다.
  • 상수는 변하지 않는 수
  • 원주률 3.14, 1년12개월 등
  • final 예약어를 사용하여 선언
  • 상수를 사용하면서 변하지 않는 값을 반복하여 사용 할 때 의미있는 문자로 인식하기 쉽고 혹, 변하더라도 선언한 부분만 변경하면 되므로 여러부분을 수정 할 필요가 없음!
public class ConstantTest {
    public static void main(String[] args) {

        final  int MAX_NUM = 1024;
        final  int MIN_NUM = 10;

        System.out.println(MAX_NUM);
        System.out.println(MIN_NUM);
        
     // MAX_NUM = 2048; 상수값은 변경할수 없음!'
        
    }
}

– 리터럴(literal)

자바에서 리터럴은 소스 코드에서 사용되는 고정된 값을 나타냅니다. 이 값은 변수에 할당되거나 다른 표현식에서 사용될 수 있습니다. 리터럴은 자료형에 따라 다양한 형태를 가질 수 있습니다. 예를 들어, 정수형 리터럴은 int 또는 long 유형이 될 수 있으며, 부동 소수점 리터럴은 float 또는 double 유형이 될 수 있습니다.
리터럴은 다양한 형태를 가질 수 있습니다. 예를 들어, 정수형 리터럴은 10진수(42), 16진수(0xFF), 8진수(0755) 등으로 표현할 수 있습니다. 부동 소수점 리터럴은 소수점을 가진 숫자(3.14) 또는 지수 형태(2.0e3)로 표현할 수 있습니다. 문자 및 문자열 리터럴은 작은 따옴표('A') 또는 큰 따옴표("Hello")로 감싸여 있습니다.
리터럴은 프로그램에서 값을 지정하는 데 사용되며, 변하지 않는 값을 나타내기 위해 주로 상수와 함께 사용됩니다. 자바에서 리터럴은 프로그래밍 언어의 기본적이고 중요한 개념 중 하나입니다.
  • 프로그램에서 사용하는 숫자, 문자, 논리값을 뜻함
  • 리터럴은 상수 풀(constant pool)에 있음
  • 정수 리터럴은 int로 실수 리터널은 double로 저장됨, 정수의 범위가 넘어가는 경우는 L, I을 float로 사용하려는 경우는 F, f 식별자를 써줘야 함

– 형변환(type conversion)

자바에서 형변환은 한 데이터 유형에서 다른 데이터 유형으로의 변환을 의미합니다. 형변환은 데이터의 유형이 다른 경우 변수 또는 값의 유형을 변경하는 데 사용됩니다.
자바에서는 두 가지 유형의 형변환을 사용할 수 있습니다: 암시적 형변환과 명시적 형변환입니다. 암시적 형변환은 자동으로 이루어지며, 작은 데이터 유형에서 큰 데이터 유형으로의 변환이나 정밀도가 낮은 유형에서 높은 정밀도 유형으로의 변환이 발생할 때 발생합니다. 예를 들어, intdouble로 변환하는 것은 암시적 형변환이며, 자동으로 처리됩니다.
명시적 형변환은 개발자가 직접 지정하는 변환으로, 더 큰 데이터 유형에서 더 작은 데이터 유형으로의 변환 또는 정밀도가 높은 유형에서 낮은 정밀도 유형으로의 변환이 필요한 경우에 사용됩니다. 이 때 괄호 안에 목표 유형을 명시해야 합니다. 예를 들어, double 값을 int로 변환하려면 (int) 3.14와 같이 명시적 형변환을 사용할 수 있습니다.
형변환은 자바에서 데이터를 처리하는 중요한 개념 중 하나이며, 프로그램에서 데이터의 유형을 적절하게 변환하는 것은 프로그램의 동작을 제어하는 데 중요합니다.
  • 서로다른 자료형 간에 연산등의 수행을 위해 하나의 자료형으로 통일하는 것
  • 묵시적 형변환(자동) 과 명시적 형변환(강제) 이 있음
  • 바이트 크기가 작은 자료형 에 큰 자료형으로 형변환은 자동으로 이루어 짐
  • 덜 정밀한 자료형에서 더 정밀한 자료형으로 형변환은 자동으로 이루어 짐
public class TypeConversion {
    public static void main(String[] args) {

        double dNum = 1.2;
        float fNum = 0.9f;
        int iNum1 = (int)dNum + (int)fNum;  // int 1 + 0
        int iNum2 = (int)(dNum + fNum);     // 더하고 나서 int 1.2 + 0.9 = 2.1 int = 2
        System.out.println(iNum1);
        System.out.println(iNum2);

        int num = 1000;
        byte bNum = (byte) num;
        System.out.println(bNum);
        
    }
}

Leave a Comment