자료형이란?
- 비트(Bit) : 0과 1로 표현할 수 있는 가장 작은 단위.
- 변수 선언 : 프로그램 실행 중에 발생하는 데이터를 저장하기 위해서는 저장하기 위한 기억 장소를 마련해야 하는데, 그것을 "변수를 선언한다"라고 한다.
- 할당 : 변수에 값이 대입되었을 때 할당되었다고 이야기 한다.
- 초기화 : 변수가 선언된 뒤, 가장 처음으로 할당될 때 초기화 되었다고 표현한다.
- 자료형 : 변수를 선언할 때는 그 변수의 어떤 성격의 데이터를 저장할 것인지 정해주어야 한다. 그것을 자료형이라고 한다.
- 기호상수 : 상수에 변수처럼 이름을 붙이고 싶을 때 사용한다. 변수 앞에 fianl 을 붙이면 사용가능하다. 초기화 이후 값을 변경할 수 없다.
ex) final int num = 3.4;
자료형의 종류
기본 자료형
- 변수 자신이 값을 가지고 있는 자료형
- char, boolean, byte, short, int, long, float, double
참조 자료형
- 변수 자신이 값을 가지고 있는 것이 아니라, 값이 있는 메모리를 참조(가르키는)하는 자료형
- 객체, 배열, String(단, string은 기본 자료형처럼 쓰이기도 한다)
기본 자료형의 상세 내용
byte(1Byte, 8bit)
- -27 ~ 27-1
- 십진수의 정수를 저장하기 위한 자료형
- 컴퓨터가 다룰 수 있는 정보의 최소 단위
short(2Byte, 16bit)
- -215 ~ 215-1
- 십진수의 정수를 저장하기 위한 자료형
int(4Byte, 32bit)
- -231 ~ 231-1
- 십진수의 정수를 저장하기 위한 자료형
- 정수를 사용하면 기본적으로 이 자료형이 된다
long(8Byte, 64bit)
- -263 ~ 263-1
- 십진수의 정수를 저장하기 위한 자료형
float(4Byte, 32bit)
- 부동소수점을 저장하기 위한 자료형
- float으로 만들었다면 값에 f를 붙여주거나 float형으로 형변환을 해야 컴파일 에러가 나지 않는다.
- 십진수의 정수를 저장하기 위한 자료형
double(8Byte, 64bit)
- 부동소수점을 저장하기 위한 자료형
- 부동소수점을 사용하면 기본적으로 이 자료형이 된다.
char(1Byte, 8bit)
- 문자를 저장하기 위한 자료형
- 해당 변수의 값은 홑따옴표로 묶어놓아야 한다.
- 만약 쌍따옴표로 묶었을 경우 아래와 같은 오류가 나온다
error: incompatible types: String cannot be converted to char
(변수의 자료형과 타입이 맞지 않은 값을 넣었을 때 나오는 오류.) - 해당 변수는 문자열로부터 한 문자씩 뽑아서 사용할 때 많이 사용된다
boolean(1Byte, 8bit)
- 논리 값을 저장하기 위한 자료형
- true와 false의 값을 가진다.
- if문의 조건이나 while 문의 조건등에 주로 사용된다.
자료형끼리의 연산
형변환이란?
- 자료형을 변환해주는 기능으로 직접적으로 변화시키고 싶을 때는 '(변환시킬 자료형) 기존값'의 형식으로 사용한다.
(double) 2 / 5
- 자동형변환과 강제형변환이 있는데, 자동형변환은 작은 범위의 타입을 큰 타입으로 넣을 때 실행된다.
- 큰 범위의 타입을 작은 타입으로 넣을 때 등은 강제 형변환을 사용한다.
- 자동형변환은 작은 타입의 값을 큰 타입에 넣었을 때 자동적으로 큰 타입으로 형변환이 된다. ex) 2+2.5
- 강제형변환은 char형을 int형으로 바꿀 때나, int 형끼리 나눗셈 연산을 할 때 등에 사용된다.
int형 끼리 나눗셈 연산을 하면 int형 결과가 나오기 때문이다.
문자열과 정수형의 연산
- 문자열과 정수형의 덧셈연산 : 정수형이 문자열로 변환된다.
class HelloJava{
public static void main(String []args ){
int num = 12345;
String str = "문자열";
System.out.print(num+str);
}
}
- 문자열과 정수형의 곱셈연산은 다른 언어와 다르게 불가능하다. 다만 repeat 메소드를 통해 해당 문자열을 반복하는 것이 가능하다.
'Kosta DevOps 과정 280기 > Java' 카테고리의 다른 글
제어문(1) - 정의와 종류 (0) | 2024.05.13 |
---|---|
연산자 (0) | 2024.05.12 |
기본 입출력 (0) | 2024.05.10 |
자바의 기본 구성과 API (0) | 2024.05.10 |
기본 정보 (1) | 2024.05.10 |