Java의 정석 강의로 Java 학습하기

김민석·2026년 2월 16일

변수

하나의 값을 저장하기 위한 저장 공간
javascript와 다르게 int,string 등 변수 타입으로 선언해야함.

int age;
age =10;
System.out.print(age); // 10;

타입 추론

JDK 10 이후부터 나옴 var로 선언 시 컴파일러가 오른쪽 표현식으로부터 타입을 추론

int year =2024;
var year = 2024;
LinkedHashMap map = new LinkedHashMap(); // 변경 시 두곳을 고쳐야함.
var map = new LinkedHashMap();//한곳만 고치면 됨.
Ma연봉정보 바로가기
p<String, String> map = new LinkedHashMap<>();

var는 오른쪽 표현식의 타입을 컴파일 시점에 추론하므로
생성자 타입을 변경할 때 왼쪽 타입을 따로 수정할 필요는 없다.
다만 일반적으로는 인터페이스 타입으로 선언하는 것이 더 좋은 설계이다.

상수

final을 붙여줘야 상수가 됨. 보통 대문자로 선언함.

final int MAX_VALUE =100;

텍스트 block

	String block = """
    	Hello
        World
        """;
    Stystem.out.print(block); 

텍스트 block은 마지막 """이 기준이 되어 """이

String block = """
    	Hello
        World
   """;

이렇게 될 경우 """와 hello,world의 공간만큼 공백으로 됨.

화면에서 입력받기 - Scanner

Scanner scanner = new Scanner(System.in); Scanner 객체 생성 및 화면으로 부터 입력 받기 
String input = scanner.nextLine(); 입력받아 input 에 저장
int num = Integer.parseInt(input); 입력받은 input을 num 에 숫자로 변환한 후 저장

형변환

값의 타입을 다른 타입으로 변환하는 것.
(타입)피연산자

float -> int

double d = 85.4;
int score = (int)d; // 85;

int -> char

(char)65 -> 'A'

int -> float

(float)10 -> 10.0f

char -> int

(int)'A' -> 65

자동 형변환

값 손실이 없을때만 가능함.
값을 최대한 보존할 수 있는 타입으로 변환
작은=>큰타입 변할때 값 손실이 없음.

자주 사용되는 변환

  • 숫자를 문자로 변환 - 숫자에 '0'을 더함
    (char)(3+'0') -> '3'
  • 문자를 숫자로 변환 - 숫자에 '0'을 뺀다.
    '3' -'0' -> 3
  • 숫자를 문자열로 변환 - 숫자에 빈 문자열 더함
    3 + "" -> "3"
  • 문자열을 숫자로 변환 - Integer.parseInt()등 사용
    Integer.parseInt("3") -> 3
  • 문자열을 문자로 변환 - charAt(0)을 사용
    "3".charAt(0) -> '3'
  • 문자를 문자열로 변환 - 빈 문자열 더하기
    '3' + "" -> "3"

연산자의 우선순위

1.단항 연산자가 먼저 실행된다.
2.이항 연산자가 실행됨.
3. 곱셈 나눗셈은 뺄셈 덧셈보다 빨리 실행됨.
4. 비교 연산자는 산술 연산자(+,-)보다 늦게 실행됨.
5. 논리 연산자는 비교 연산자보다 늦게 실행됨.
6. 대입 연산자는 무조건 마지막.

쉬프트 연산자

x << 2+1 // 2 + 1 먼저한 후 쉬프트 연산자 실행

<< 는 * x2

비트 연산자

비트 연산자는 비교 연산자 보다 늦게 실행됨.

논리 연산자

and가 or 보다 먼저 실행됨 그리고 and 와 or을 같이 쓸때는
괄호를 해주는게 보기좋음.

연산시 자동 형변환

작은 타입에서 큰 타입으로 일치시킨 후 연산

profile
나만의 기록장

0개의 댓글