Java 개념정리 2일차

2026. 1. 12. 16:36대우개발원 수업 내용/Java 정리

반응형

[변수 (Variable)]

 

변수는 값을 저장할 수 있는 메모리의 특정 번지에 붙여진 이름이다.
변수를 통해 해당 메모리 번지에 하나의 값을 저장하고 읽을 수 있다.
변수는 정수, 실수, 논리값 등 다양한 타입의 값을 저장할 수 있다.

 

[변수 선언]

  • 변수 사용을 위해 반드시 선언이 필요
  • 선언 시 결정하는 것
    1. 저장할 데이터 타입
    2. 변수 이름
  • 같은 타입의 변수는 콤마(,)로 한 번에 선언 가능

예)
int a;
int x, y, z;


[변수 이름 규칙]

  • 자바 언어에서 정한 명명 규칙을 따라야 함
  • 예약어는 변수 이름으로 사용 불가
  • 예약어 사용 시 컴파일 에러 발생

[값 저장과 대입 연산자]

  • 값 저장 시 대입 연산자(=) 사용
  • 오른쪽 값을 왼쪽 변수에 저장

예)
int score;
score = 90;


[변수 초기화]

  • 변수가 최초로 값을 저장하는 것
  • 이때 메모리에 변수가 생성됨
  • 초기화 시 저장된 값을 초기값이라 함
  • 초기화되지 않은 변수는 사용 불가

[변수 사용]

  • 변수에 저장된 값을 출력문에서 사용
  • 연산식 내부에서 변수 값 사용 가능

예)
System.out.println(score);
int sum = x + y;


[변수 값 복사]

  • 한 변수의 값을 다른 변수에 저장하는 것

예)
int a = 10;
int b = a;


[로컬 변수 (Local Variable)]

  • 메소드 블록 내부에서 선언된 변수
  • 선언된 블록 내부에서만 사용 가능
  • 메소드 실행 종료 시 자동 삭제

주의 사항

  • 사용 범위를 고려하여 선언 위치 결정
  • 메소드 전체에서 사용 시 블록 첫 부분에 선언
  • 특정 블록에서만 사용 시 해당 블록 내부에 선언

[기본 타입 (Primitive Type)]

  • 자바는 총 8개의 기본 타입 제공
  • 정수, 실수, 논리값 저장 가능

[정수 타입]

  • 메모리 크기와 저장 가능한 범위가 타입마다 다름
  • byte, short, int, long

[리터럴 (Literal)]

  • 소스 코드에 직접 입력된 값
  • 정수 리터럴은 기본적으로 int 타입으로 인식

[char 타입]

  • 하나의 문자를 저장
  • 작은 따옴표(' ') 사용
  • 내부적으로 유니코드 정수값으로 저장
  • char 타입은 정수 타입

예)
char c = 'A';


[문자열 (String)]

  • 큰따옴표(" ")로 감싼 문자들의 집합
  • char 타입에 저장 불가
  • String 타입 사용

[이스케이프 문자]

  • 문자열 내부에서 \ 사용
  • 특수 문자 표현 및 출력 제어 가능

[실수 타입]

  • float, double
  • 실수 리터럴은 기본적으로 double 타입
  • float 사용 시 리터럴 뒤에 f 또는 F 필요
  • double이 float보다 정밀도가 높음

[논리 타입]

  • boolean 타입
  • true, false 값 저장
  • 조건문과 반복문에서 흐름 제어에 사용

[타입 변환]

  • 다른 타입 변수에 값을 저장할 때 발생
  • 자동 타입 변환 (promotion)
  • 강제 타입 변환 (casting)

[자동 타입 변환]

  • 작은 범위 → 큰 범위 타입으로 변환
  • char → int 변환 시 유니코드 값 저장

[강제 타입 변환]

  • 큰 범위 → 작은 범위 타입으로 변환
  • 캐스팅 연산자 () 사용
  • 데이터 손실 가능

[정수 연산에서의 타입 변환]

  • byte, char, short → int로 자동 변환
  • 피연산자 중 하나가 long이면 결과는 long

[실수 연산에서의 타입 변환]

  • 피연산자 중 하나가 double이면 결과는 double
  • 정수 연산 결과는 정수
  • 실수 결과를 원하면 실수로 변환 후 연산

[+ 연산과 문자열 결합]

  • 모두 숫자 → 덧셈
  • 하나라도 문자열 → 문자열 결합
  • 앞에서부터 순차적으로 수행

[문자열을 기본 타입으로 변환]

  • 숫자가 아닌 문자가 포함되면 예외 발생
  • String.valueOf() 사용 가능

[표준 출력과 입력]

  • System.out : 표준 출력 장치(모니터)
  • System.in : 표준 입력 장치(키보드)

[출력 메소드]

  • println() : 줄바꿈 출력
  • printf() : 형식 지정 출력

[키보드 입력]

  • System.in.read() : 키코드 단위 입력
  • 한글 및 문자열 처리 한계 존재
  • Scanner 클래스 사용으로 해결

[Scanner 클래스]

  • 통문자열 입력 가능
  • 다양한 next~() 메소드 제공
  • 한글 출력 오류 시 문자셋 지정 필요

[기본 타입 비교와 문자열 비교]

  • 기본 타입 비교 : ==
  • 문자열 비교 : equals()

[문제]

문제 1. Quiz1.java
키보드로 두 실수를 입력받아 첫 번째 수에 두 번째 수를 더한 결과를 출력하시오.
(Scanner의 nextLine() 사용)

 


문제 2. Quiz2.java
Scanner를 이용하여 이름, 주민번호 앞 6자리, 전화번호를 입력받아
입력 예시와 동일한 형식으로 출력하시오.
(Scanner의 nextLine() 사용)

 

'대우개발원 수업 내용 > Java 정리' 카테고리의 다른 글

Java 개념정리 6일차  (0) 2026.01.12
Java 개념정리 5일차  (0) 2026.01.12
Java 개념정리 4일차  (0) 2026.01.12
Java 개념정리 3일차  (0) 2026.01.12
Java 개념정리 1일차  (0) 2026.01.12