재밌고 어려운 IT를 이해해보자~!

Section 02. 변수와 자료형 본문

JAVA Book Study

Section 02. 변수와 자료형

언제나즐거운IT 2023. 12. 17. 14:51

01. 데이터

출력문

System.out.Printf() => 문자열을 서식문자를 이용해 형식화된 내용으로 출력한다.

하나의 출력문에 여러 개의 서식 문자르 사용할 수 있으며 반점(.)으로 구분된 데이터가 순차적으로 대입되어 출력된다.

 

서식문자 출력형태
%d 정수(10진수)
%f 실수
%s 문자열
%c  문자

다음처럼 원하는만큼 공백을 두고 출력,

소수점 출력하고싶은 만큼 자리 지정,

공백에 0으로 채원허기 등 다양하게 사용할 수 있다.

package ztest;

public class Test01 {
	public static void main(String[] args) {

		System.out.printf("%5d\n", 1);
		System.out.printf("%05d\n", 1);
		System.out.printf("%.3f", 0.123456);
	}
	
}

 

출력

 

02. 변수

메모리에 값을 저장하기 위해 할당해 놓은 특정 공간을 변수라고한다.

변수명을 정할떈 숫자로 시작할 수 없으며 특수문자는 '$' 와 '_' 만 사용 가능하다.

자바에서 이미 특정 의미를 가지고 사용되는 예약어의 명들은 변수로 사용할 수 없다.

변수수명은 카멜 표기법으로 명명하자.

 

ex)

userName, phoneNumber, changeUserName 등등 두번째 단어부터 첫 알파벳은 대문자 사용.

 

대입연산자 = 를 사용해 필요한 값을 변수에 저장하며

변수를 선언하고 처음으로 값을 대입하는 것을 '초기화'라고 한다. 

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

변수를 선언하기 전에 사용 범위를 먼저 고려하자.

03. 자료형

자료형은 자바 언어가 처리할 수 있는 데이터의 종류를 의미한다.

 

기본 자료형 : 실제 데이터 값을 저장. 각각 저장 크기가 다르며 기본값이 정해져 있다.

메모리를 얼마만큼 할당받을지 정해져있고 데이터의 표현 범위도 각각 다르다.

 

참조 자료형 : 데이터가 저장되어 있는 메모리 번지를 저장. 기본 자료형을 제외한 나머지 사용자 정의 자료형을 말하며, 기본값이 정해져 있지 않기 때문에 null 값이 존재한다.

 

long, float 자료형의 경우 L or l , F or f 를붙여서 각각 long, float형임을 컴파일러에게 알려줘야한다. 

 

04. 참조 자료형

기본 자료형은 Stack이라는 공간에 자리를 할당받고 데이터를 저장하지만 참조 자료형의 경우 Heap이라는 공간(개발자 전용 공간)에 데이터를 저장하고 그 주소를 Stack에 저장한다. 주소를 참조하는 값을 저장한다고 해서 참조 자료형이라 부른다.

 

05. 형 변환

형 변환이란, 말 그대로 자료형을 다른 자료형으로 변환하는 것을 말한다.

기본적으로 모든 연산은 같은 자료형끼리만 수행할 수 있다.

 

자동 형변환

- 크기가 작은 자료형에서 큰 자료형으로 변환될 떄

- 정수형이 실수형으로 변환될 때

 

강제 형변환 

- 크기가 큰 자료형에서 작은 자료형으로 변환될 때

 

* 주의사항

강제 형변환읙 경우 데이터의 손실이 일어난다면 예상치 못한 결과를 얻을 수 있으며 타입이 다른 자료형끼리 형변환을 할 경우 소수점 자리가 버려지거나 0으로 초기화 되는등의 규칙이 있음으로 잘 확인해야 한다.

05. 데이터 입력

Scanner 클래스를 이용해서 입력받을 수 있다. 입력받는 데이터 타입을 명시해줘야한다.

 

 

 

 

 

 

 

 

 

'JAVA Book Study' 카테고리의 다른 글

Section 06. 배열  (0) 2023.12.17
Section 05. 제어문 - 2  (0) 2023.12.17
Section 04. 제어문 - 1  (0) 2023.12.17
Section 03. 연산자  (2) 2023.12.17
Section 01. 자바 프로그래밍의 기본  (0) 2023.12.12
Comments