카테고리 없음

java 기본 자료형 8가지 + String

Cognivox 2025. 4. 1. 11:30
반응형

 

✅ 자바의 기본 자료형(Primitive Types) 총 8가지

🟦 정수형 4가지

자료형크기저장 범위예시
byte 1바이트 -128 ~ 127 byte age = 20;
short 2바이트 -32,768 ~ 32,767 short year = 2025;
int 4바이트 약 -21억 ~ +21억 int score = 100;
long 8바이트 매우 큰 정수 long population = 8000000000L;

✅ 정수형 쓸 때 L을 붙인다?

👉 long 타입일 때만 붙인다!

자바에서 정수 리터럴(예: 10000)은 기본적으로 int 타입으로 인식됨.
근데 long은 int보다 훨씬 더 큰 수를 담을 수 있음.

그래서 정수 값이 int 범위를 넘거나 long 타입임을 명확히 하고 싶을 때,
숫자 뒤에 L 또는 l 을 붙여야 함.

📌 L을 안 붙이면 자바는 int로 인식해서 에러 날 수 있음.

 


🟩 실수형 2가지

자료형크기특징예시
float 4바이트 소수점 7자리 정확도 float height = 175.5f;
double 8바이트 소수점 15자리 정확도 (기본값) double pi = 3.141592;

 

✅ float에 f를 꼭 붙이는 이유

자바에서 **소수점 숫자(실수)**를 쓰면,
기본적으로 double 타입으로 인식됨

 

 

👉 그래서 float 타입에 값을 넣을 땐
"이건 float이야!" 하고 명확히 알려주기 위해 f를 붙여야 함.

📌 f를 안 붙이면 자바는 "이건 double이니까 float에 못 넣어!" 라고 에러를 냄


🟨 문자형 1가지

자료형크기설명예시
char 2바이트 문자 1개 저장 char grade = 'A';

✅ 1. char → int 변환: 문자 → 숫자

자바에서 문자는 char형으로 저장되는데,
이건 **보이는 글자처럼 보여도, 내부적으로는 숫자(코드값)**로 저장됨

👉 문자 'A'를 int로 변환하면 65라는 숫자가 나옴
이 숫자가 바로 아스키 코드(ASCII Code) 값이야!


✅ 2. int → char 변환: 숫자 → 문자

반대로 숫자를 문자로 바꿀 수도 있음

 

👉 숫자 66은 문자 'B'에 해당하는 아스키코드 값


✅ 3. 그럼 아스키코드가 뭐냐면?

ASCII (American Standard Code for Information Interchange)
👉 미국표준 문자 인코딩 체계임

컴퓨터는 문자를 직접 이해하지 못함.
그래서 각 문자마다 숫자를 정해놓고, 그 숫자로 저장하고 처리함

👉 이처럼 문자와 숫자 사이의 매핑을 미리 정해둔 게 아스키코드임


✅ 그래서 왜 아스키코드가 중요할까?

  • 문자와 숫자를 비교할 수 있음
  • 문자 정렬, 암호화, 판별 등에 활용 가능
  • 예: '0' <= ch <= '9' → 문자가 숫자인지 검사 가능!

 

 

*아스키 코드 


🟥 논리형 1가지

자료형크기설명예시
boolean 1비트 참/거짓 저장 boolean isPass = true;


🎯 총정리 – 8가지 기본 자료형

정수형(4): byte, short, int, long
실수형(2): float, double
문자형(1): char
논리형(1): boolean

 

 

*** 문자열 자료형  " String"

✅ 자바에서 String은 기본 자료형이 아님!

  • int, char, boolean처럼 소문자로 시작하는 기본 자료형은 아니고
  • String은 클래스형(참조형) 자료형!
  • 그래서 항상 대문자 S로 시작

✅ 문자열은 큰따옴표 "로 감싼다!

📌 String = 큰따옴표 " "
📌 char = 작은따옴표 ' '

 

✅ String으로 할 수 있는 유용한 기능들

 

✅ 문자열과 숫자가 더해지는 순서가 핵심!

✅ 예시 1: 문자열이 앞에 오면?

🔍 실행 순서:

  1. "Java" + 123 → "Java123"
  2. "Java123" + 456 → "Java123456"

💡 문자열이 먼저 나왔기 때문에, 뒤에 오는 숫자들도 문자열처럼 이어붙여짐


✅ 예시 2: 숫자가 먼저 오면?

🔍 실행 순서:

  1. 123 + 456 → 579
  2. 579 + "Java" → "579Java"

👉 결과:

💡 숫자끼리는 먼저 계산되고,
문자열이 등장하는 순간부터는 문자열처럼 이어짐


✅ 예시 3: 숫자, 문자열, 숫자 섞였을 때?

🔍 실행 순서:

  1. 100 + "원" → "100원"
  2. "100원" + 50 → "100원50"

👉 결과:

🎯 핵심 정리!

예시결과이유
"A" + 1 + 2 A12 앞에 문자열이 있어서 이어붙임
1 + 2 + "A" 3A 앞의 숫자는 계산, 그 후 문자열
1 + "A" + 2 1A2 숫자+문자 → 문자열로 바뀌어 이어짐

✨ 한 줄 정리

문자열이 먼저 나오면 → 그 뒤 숫자도 전부 문자열처럼 붙임!
숫자가 먼저면 → 먼저 계산한 후에 문자열과 이어짐!



✅ 실수 자료형이란?

👉 소수점이 있는 숫자를 저장하는 자료형
예: 3.14, -0.5, 12345.6789 이런 숫자들!

자바(Java)에서는 2가지 종류가 있음:


✅ 1. float

항목설명
기본값 0.0f → 끝에 f 붙여야 함
크기 4바이트 (적당한 소수 표현 가능)
범위 ±3.4 × 10^38 까지 표현 가능
예시 float pi = 12.25f; ← 꼭 f 붙여야 함!

✅ 2. double

항목설명
기본값 0.0d → 끝에 d는 써도 되고 안 써도 됨 (기본값이 double이라 생략 가능)
크기 8바이트 (더 정밀한 소수 표현)
범위 ±1.8 × 10^308 까지 표현 가능
예시 double d = 12345.234d; 또는 double d = 12345.234;

✅ 왜 float은 f를 붙이고 double은 안 붙여도 될까?

자바에서 기본 소수 타입이 double이기 때문에,
숫자에 아무것도 안 붙이면 자바는 자동으로 double로 처리함.


🎯 한 줄 요약

자료형소수 표현 정밀도크기특징
float 중간 (7자리 정도) 4바이트 f 붙이기!
double 더 정밀 (15자리 정도) 8바이트 기본 소수형이라 d 생략 가능

 

✅ 1. 실수 → 정수로 변환 (소수점 날려버림)

👉 강제 형변환 (명시적 변환) 필요!
소수점은 버려지고 정수 부분만 남음

📌 (int) 이렇게 써서 명시적으로 강제 변환!


✅ 2. 정수 → 실수로 변환 (자동으로 바뀜)

👉 자동 형변환 (묵시적 변환) 가능!
정수는 실수로 부드럽게 변환됨.

 

📌 실수 쪽이 크기나 정밀도가 더 크기 때문에 자바가 자동으로 변환.


🎯 정리 표

변환 방향방법특징
실수 → 정수 (int)실수 소수점 날림, 강제 형변환 필요
정수 → 실수 자동 변환 자연스럽게 바뀜

 

 

 

#실수자료형 #float #double #자바기초 #자바자료형 #코딩공부 #프로그래밍기초 #정밀도 #소수점표현 #자료형비교 #코딩입문 #자바공부 #코딩수업 #컴퓨터기초 #자바float #자바double #변수선언 #4바이트 #8바이트 #자바실수형

#자바 #자바학습 #자바기초 #자바프로그래밍 #자바언어 #자바기초학습 #자바배우기 #자바개발 #자바코딩 #자바문법 #자바배열 #자바클래스 #자바객체지향 #자바메서드 #자바변수 #자바조건문 #자바반복문 #자바예제 #자바튜토리얼 #자바개발자

 

반응형