danc
danc*dev
danc
  • 분류 전체보기
    • codestates_BE_bootcamp39
      • 주단위 일기
      • 회고
    • programming
      • JAVA
      • SPRING
      • GENERAL
      • LINUX
      • ALGORITHM
      • ERROR_HANDLING
    • web
      • NETWORK
      • DB
      • HTML
      • CSS
    • kr
    • nz

최근 글

인기 글

태그

  • 코드스테이츠 백엔드
  • css
  • TIL
  • AOP
  • React에서 Authorization헤더
  • 일기
  • 코드스테이츠
  • TIL일기
  • 윈도우 11 우분투
  • HTTP
  • 회고
  • TIL 일기

최근 댓글

티스토리

hELLO · Designed By 정상우.
danc

danc*dev

programming/JAVA

Java - 변수 / 상수 / 타입변환

2022. 5. 4. 17:54

 

변수 (Variables)

 

데이터의 저장 공간 (String name1 = "Dog"; 에서 name1이 변수이다)

사용 이유: 

  1.  메모리에 데이터의 저장공간 확보
  2.  협업시에 데이터에 이름 (변수명)을 붙여 소통 용이
  3.  데이터의 재사용 

 

*변수명은 camelCase로 주로 사용하는데 두번째 단어부터 대문자로 시작해 구분

* 숫자로 시작하는 변수명이나 예약어는 사용 불가 (int 11go; int byte, int class 등) 

**변수명 짓는 게 가장 어렵다는 말도 있다. 


상수 (Constants) 

 

고정된 값, 프로그램 상에서 변해서는 안 되는 수 (생년월일, 원주율 값, 중력값 등등) 

자바에서는 c와 다르게 final 예약어를 쓴다. 상수는 선언과 동시에 값을 초기화 해야한다. 

예) final ASTRO_GRAVITY = 9.81; 

상수를 쓰는 이유:

  1.  오타로 인한 에러 방지
  2.  변하면 안되는 값 보존
  3.  데이터의 재사용 
  4.  리터럴에 의미있는 이름을 붙여 코드의 이해와 수정을 쉽게 한다.

리터럴 (Literal)

 

소스 코드에서 특정 자료형의 값을 직접 표현하는 방식 

예) 정수형 데이터일때 10진수라는 걸 표현하려면 아무것도 안 붙이고 10이라고 쓰고 16진수라는 것을 표현하려면 앞에 0x를 붙여 0xF3이라 쓰고, float 일 경우 숫자 뒤에 f를 붙여 3.14f처럼 표현.

문자형 일때는 글자 앞뒤로 '를 붙여 'k'와 같은 식으로 표현한다. 

 


타입 변환 

 

Widening Casting (자동 타입 변환)

smaller type size to larger type size

byte(1) -> short(2) -> char(2) -> int(4) -> long(8) -> float(4) -> double(8)

int k = 1;

double d = k;

 

Narrowing Casting (수동 타입 변환)

larger type size to smaller type size

double(8) -> float(4) -> long(8) -> int(4) -> char(2) -> short(2) -> byte(1)

doubld d = 1.51d;

int i = (int)d;
저작자표시 (새창열림)

'programming > JAVA' 카테고리의 다른 글

Java - 연산자 우선순위 (Operator Precedence) 테이블  (0) 2022.05.04
Java - Type  (0) 2022.05.04
Java - [문자열] StringTokenizer  (0) 2022.05.04
Java - [문자열] StringBuilder / StringBuffer  (0) 2022.05.04
Java - [문자열] String  (0) 2022.05.04
    'programming/JAVA' 카테고리의 다른 글
    • Java - 연산자 우선순위 (Operator Precedence) 테이블
    • Java - Type
    • Java - [문자열] StringTokenizer
    • Java - [문자열] StringBuilder / StringBuffer
    danc
    danc
    Backend 개발자를 목표로 공부 중 입니다.

    티스토리툴바