IT/JAVA

Java Section 02 : 변수와 자료형

_KH_ 2025. 1. 3. 19:58

01 데이터

1. 출력문

System.out.println / system.out.print
// 괄호 안의 내용 출력 (문자열로 인식)

System.out.printf
// 문자열을 서식 문자를 이용해 형식화된 내용으로 출력
// 값의 자료형에 따라 서식 문자를 이용해 출력
- %d: 정수형(10진수), %o : 정수형(8진수), %x : 정수형(16진수), %f : 실수형, %s: 문자열, %c :문자 등..  

- 출력값 정렬도 가능하다!

 

02 변수

변수 : 메모리에 값을 저장하기 위해 할당해 놓은 특정 공간. 데이터를 변수에 저장해두고 변수 이름을 불러서 사용

int num = 123; 

자료형 변수명 = 값;

 

자료형은 변수에 담을 데이터의 형태이고, 변수명은 변수의 이름이다.

int num; 은 변수의 선언, int num= 123;은 변수의 초기화를 의미한다.

 

[변수명 짓기]

1. 영어 대소문자 구분

2. 첫 글자는 숫자로 시작할 수 없고, 일반적으로 영어 소문자로 시작

3. 특수문자는 '$', '_' 사용 가능

4. 자바 예약어(키워드)는 사용 불가능하다.

=> 문자 수의 제한이 없으므로 변수의 의미를 쉽게 파악할 수 있도록 구체적으로 적는 것이 좋다!

 

[변수의 사용 범위(scope)]

모든 변수는 선언되는 중괄호{ } 안에서만 사용할 수 있다.

변수를 어디에 선언하느냐에 따라 변수의 사용 범위가 정해지므로 변수를 선언하기 전 사용 범위를 먼저 고려하자.

package section02;

public class VariableTest {
	public static void main(String[] args) {
    		String favoriteFood;
            }
    favoriteFood = "돈까스"; // 오류 발생. 괄호 밖이라 scope가 닿지 않는다.
    }

 

03 자료형

■ 자료형(data type) : 자바 언어가 처리할 수 있는 데이터의 종류

- 변수에는 다양한 자료형이 들어갈 수 있고, 변수 선언 시 이를 지정해주어야 한다.

- 모든 변수에는 자료형이 존재하고, 자료형에 따라 저장할 수 있는 값의 형태와 크기가 정해진다.

 

① 기본 자료형 : 실제 데이터 값 저장. 8개의 자료형 존재

② 참조 자료형 : 데이터가 저장되어 있는 메모리의 주소값 저장. 기본값이 정해져 있기 때문에 null값이 존재한다.

정수형 byte, short, int, long
실수형 float, double
문자형 char
논리형 boolean

 

아스키코드(ASCII) : 0-127까지 총 128개의 문자를 처리하기 위해 만들어진 1byte 문자 체계

유니코드(Unicode) : 전 세계 모든 문자 표현 가능. 2byte

 

■ 논리형 boolean

true와 false값 저장하는 자료형. 참/거짓 2가지 선택사항이 있는 경우에 사용한다. 

 

04 참조 자료형

: 메모리상에 데이터가 저장된 주소를 저장하기 위한 공간. 

- String(문자열) 등.

- 개발자가 직접 만들어 추가할 수 있는 자료형

- 기본 자료형은 Stack이라는 공간에 자리를 할당받고 데이터를 저장하는 반면, 참조 자료형은 Heap이라는 공간에 데이터를 저장하고, 그 주소를 Stack에 저장한다.

 

05 형 변환

: 자료형을 다른 자료형으로 변환하는 것

- 다른 자료형의 데이터끼리 연산을 수행할 때 사용

- 형 변환은 숫자를 담을 수 있는 기본 자료형 간에만 가능(char도 가능)

- 정수 간 형변환의 경우, 메모리에 할당받은 크기가 큰 자료형을 크기가 작은 자료형으로 변환하면 데이터에 손실이 발생하므로 주의

- 실수 간 형변환의 경우, 크기가 큰 자료형에서 작은 자료형으로 변환하면 float의 저장 범위를 벗어나는 값을 대입하면 무한대가 되거나 0이 된다.

- 정수/ 실수 간 형변환의 경우, 실수를 정수로 형변환하면 소수점 이하 값이 버려지고, 정수를 실수로 형변환하면 정수 뒤에 0이 붙는다.


① 자동 형 변환(up casting)

: 크기가 작은 자료형에서 큰 자료형으로 변환하거나, 정수형이 실수형으로 변환될 때는 컴파일러가 자동 형 변환해준다.

데이터 손실 없음!

 

② 강제 형 변환(down casting)

: 크기가 큰 자료형에서 작은 자료형으로 변환할 때 사용. 데이터 손실이 일어날 가능성 존재. 

 

06 데이터 입력

Scanner sc = new Scanner(System.in);

: 키보드를 통해 데이터를 문자열로 입력받을 때 사용

정수형 nextByte() 입력받은 값을 byte형으로 반환
nextShort() 입력받은 값을 short형으로 반환
nextInt() 입력받은 값을 int형으로 반환
nextLong() 입력받은 값을 long형으로 반환
실수형 nextFloat() 입력받은 값을 float형으로 반환
nextDouble() 입력받은 값을 double형으로 반환
문자형 nextLine() 입력받은 라인 전체를 문자열 타입으로 반환. 엔터키로 구분
next() 입력받은 값을 문자열 타입으로 반환. 띄어쓰기로 구분

 

- java.util 패키지에 위치

- System.in은 키보드로 입력받는다는 의미

- import문을 통해 가져다 쓸 수 있음

- 사용자가 입력하는 값을 공백, 탭, 띄어쓰기 등으로 구분하여 입력받음

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

Java Section 03 : 연산자  (0) 2025.01.04
쇼핑몰 프로그램 구현  (1) 2025.01.03
Java Section 01 : 자바 프로그래밍의 기본  (2) 2025.01.02
Day 5 - 배열 문제 풀이  (0) 2025.01.02
CodeUp - 1228 : 비만도 측정 1  (0) 2025.01.01