TIL - 20250623

juni·2025년 6월 23일

TIL

목록 보기
45/317

📘 Java 기초 문법 학습 정리 (0623)

✅ 자바의 데이터 타입

▶ 정적 타이핑 언어

  • 변수 선언 시 자료형을 반드시 명시해야 함
int age = 20;
double pi = 3.14;
char c = 'A';
String greeting = "안녕하세요";
boolean flag = true;

▶ 정수 타입 (byte, short, int, long)

  • byte (1byte): -128 ~ 127
  • short (2byte): -32768 ~ 32767
  • int (4byte): 약 -21억 ~ 21억
  • long (8byte): 접미사 L 필요
byte x1 = 127;
short x2 = 32767;
int x3 = 2147483647;
long x4 = 9223372036854775807L;

▶ 실수 타입

float f1 = 3.14F;   // 4byte
double f2 = 3.14;   // 8byte

▶ 문자 타입

char c1 = 'A';
char c2 = 44034;

▶ 논리 타입

boolean b1 = true;
boolean b2 = false;
boolean b3 = 10 < 5;

✅ 변수의 스코프 (VarScope)

  • 변수는 선언된 블록 범위 내에서만 유효
  • 블록이 끝나면 메모리에서 제거됨
int x1 = 10;
if (true) {
    int x2 = 20; // x2는 여기서만 유효
}

✅ 형 변환 (Type Casting)

▶ 암묵적 형변환 (자동 변환)

byte a = 100;
int b = a; // byte -> int (자동)

▶ 명시적 형변환 (데이터 손실 위험 있음)

int c = 1000;
byte d = (byte) c; // int -> byte

▶ int보다 작은 타입은 연산 시 int로 변환됨

byte b1 = 100;
byte b2 = 70;
int result = b1 + b2;

✅ 표준 입출력

▶ 출력 (System.out)

System.out.println("Hello");
System.out.printf("오늘은 %d월 %d일입니다.\n", month, day);

▶ 입력 (Scanner)

Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
int age = Integer.parseInt(scanner.nextLine());

✅ 배열 (Array)

▶ 배열 선언 및 초기화

int[] numbers = new int[5];
numbers[0] = 50;

▶ 배열 순회

for (int i = 0; i < numbers.length; i++) {...}
for (int n : numbers) {...}
Arrays.stream(numbers).forEach(...);

▶ 배열의 기본값

  • 정수형: 0
  • 실수형: 0.0
  • 논리형: false
  • 문자형: '\u0000' (빈 문자)
  • 참조형: null

총정리

  • 자바는 정적 타이핑, 명확한 데이터 타입 관리가 특징
  • 블록 단위 스코프, 명시적 형변환에 주의 필요
  • Scanner로 사용자 입력 받고, 배열은 고정 크기와 동종 자료 관리용

0개의 댓글