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 |