전체 글 216

[코딩테스트] 백준 2903번: 중앙 이동 알고리즘

# 문제주소: https://www.acmicpc.net/problem/2903 # 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class BOJ2903_v2 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); // N번 반복 int x = 1; // 변 개수 초기화 for (int i = ..

코딩 테스트 2025.07.01

[Java/ChatGPT] Day 16.5: 키워드 몇 가지 정리

[ 학습 목표 ]각 키워드들의 차이를 알고 이해하자.[ 설명 ]✅ static- static은 클래스에 소속된 멤버를 정의할 때 사용한다.- 인스턴스를 생성하지 않고도 클래스명으로 직접 접근이 가능하다.- static 필드(변수)는 모든 인스턴스가 공유한다.- static 메서드는 인스턴스 멤버(this, non-static)에 접근할 수 없다. ✅ final- final은 한 번 할당된 값을 변경할 수 없게 만든다.- 변수: 값을 제할당할 수 없음 (상수처럼 동작)- 메서드: 오버라이딩 금지- 클래스: 상속 금지- 메모리에 몇 번 올라가느냐는 static과는 별개이며, final 자체로는 메모리 최적화와 무관하다. ✅ static final- static final은 변하지 않은 상수(Constant)..

[Java/ChatGPT] Day 16: static, final, 상수, 유틸리티 클래스

[ 학습 목표 ]static, final 키워드의 개념과 차이를 이해하고 사용할 수 있다.클래스에 공통적으로 쓰이는 데이터를 상수(static final)로 만들 수 있다.객체 생성 없이 사용하는 유틸리티 메서드를 만들 수 있다.[ 이론 ]1. static : 클래스 변수 / 클래스 메서드인스턴스가 아니라 클래스 자체에 속한 변수와 메서드static 키워드는 메모리에 딱 1번만 올라감모든 인스턴스가 같은 공간을 공유함public class Counter { static int count = 0; Counter() { count++; System.out.println("현재 객체 수: " + count); }}public class Main { public s..

[Java/ChatGPT] Day 15: 컬렉션 정렬 (Comparable & Comparator)

[ 학습 목표 ]Collections.sort()를 사용해 리스트 정렬 방법을 익힌다.Comparable 인터페이스를 구현하여 기본 정렬 기준을 만든다.Comparator 인터페이스를 사용해 동적으로 정렬 기준을 바꿔본다.[ 이론 ]1. 기본 정렬 : Collections.sort(List)기본 타입(String, Integer 등)은 정렬 기준이 이미 정의되어 있다.import java.util.*;public class SortExample { public static void main(String[] args) { List fruits = new ArrayList(); fruits.add("banana"); fruits.add("apple"); fruits.add("orang..