본문 바로가기

분류 전체보기181

Collection 인터페이스 Collection Interface Java의 Collection 인터페이스는 컬렉션 프레임워크의 루트 인터페이스로, 다양한 데이터 구조를 표현하는 공통된 메서드를 정의합니다. 이 인터페이스는 여러 컬렉션 클래스를 위한 공통된 동작을 제공하며, 컬렉션을 조작하는 메서드를 정의합니다.  주요 메서드Collection 인터페이스에서 제공하는 주요 메서드는 다음과 같습니다. 크기 관련 메서드int size(): 컬렉션에 포함된 요소의 수를 반환합니다.boolean isEmpty(): 컬렉션이 비어 있는지 여부를 반환합니다.추가 및 제거boolean add(E e): 지정된 요소를 컬렉션에 추가합니다.boolean remove(Object o): 지정된 요소를 컬렉션에서 제거합니다.boolean addAll(.. 2024. 7. 18.
HashSet과 HashMap HashSet과 HashMap HashSet과 HashMap은 자바 컬렉션 프레임워크에서 데이터를 저장하고 관리하는 데 사용되는 두 가지 주요 클래스입니다. 두 클래스 모두 해시 테이블 기반의 데이터 구조를 사용하지만, 그 목적과 사용 방식은 다릅니다. 해쉬코드 (hashCode)해쉬코드는 객체를 식별하기 위한 정수 값입니다. 자바에서 모든 객체는 hashCode( ) 메서드를 가지고 있으며, 이 메서드는 객체의 메모리 주소를 기반으로 한 정수 값을 반환합니다. 해쉬코드는 객체를 해쉬맵이나 해쉬셋 같은 해쉬 기반의 컬렉션에 저장하거나 검색할 때 사용됩니다. 동일한 객체는 동일한 해쉬코드를 가져야 하고, 동일하지 않은 객체는 가능한 서로 다른 해쉬코드를 가져야 합니다. HashSetHashSet은 집합(S.. 2024. 7. 18.
2024.07.18 (목) { toArray, Iterable, copyOf, Key-Value Pair } Iterable 인터페이스자바에서 Iterable 인터페이스는 컬렉션 객체를 순회(반복)할 수 있는 기능을 제공합니다. 이 인터페이스는 java.util 패키지에 포함되어 있으며, Iterator를 반환하는 iterator() 메서드를 정의하고 있습니다. 모든 컬렉션 클래스(예: List, Set, Queue)는 Iterable 인터페이스를 구현합니다. Iterable 인터페이스 정의Iterable 인터페이스는 다음과 같이 정의됩니다:package java.lang;import java.util.Iterator;public interface Iterable { Iterator iterator();}주요 메서드iterator(): 컬렉션을 순회할 때 사용할 Iterator를 반환합니다.예제 코드Ite.. 2024. 7. 18.
#4 Lesson: Expressions, Statements, and Blocks Expressions, Statements, and Blocks이제 변수와 연산자에 대해 이해했으므로, Expression, Statements, 그리고 Block에 대해 배울 시간입니다. 연산자는 값들을 계산하는 Expression을 만드는 데 사용될 수 있습니다; Expression은 Statement의 핵심 구성 요소입니다; Statement 들은 블록으로 그룹화될 수 있습니다. ExpressionsExpression는 변수, 연산자, 그리고 메서드 호출로 구성되며, 언어의 문법에 따라 구성됩니다. 이는 단일 값으로 평가됩니다. 이미 Expression의 예를 보았는데, 아래에서 굵은 글씨로 나타낸 부분입니다:int cadence = 0;anArray[0] = 100;System.out.printl.. 2024. 7. 18.
Type Erasure(타입 소거) Type Erasure(타입 소거)Java의 제네릭이 런타임 시 타입 정보를 유지하지 않고 컴파일 타임에만 사용되는 메커니즘을 말합니다. 이는 제네릭의 타입 정보가 컴파일 시점에서 제거되고, 런타임에는 원래의 비제네릭 타입으로 변환되는 것을 의미합니다. 타입 소거 덕분에 제네릭이 자바 1.5 이전의 코드와 호환성을 유지할 수 있습니다.타입 소거(Type Erasure)는 Java에서 제너릭을 도입할 때, 기존의 코드와의 하위 호환성(Backward Compatibility)을 유지하기 위해 채택된 메커니즘입니다. 자바 5 때 도입 됐으므로 그전 자바 버전에서는 제너릭을 인식 못하기 때문에 타입 소거 타입 소거의 작동 방식제네릭 타입 정보 제거: 컴파일러는 제네릭 타입 정보를 제거하고 원래의 비제네릭 타입.. 2024. 7. 18.
@ 어노테이션 (Annotation) 어노테이션(Annotation)은 Java에서 코드에 메타데이터를 추가하는 방법입니다. 어노테이션은 컴파일러에게 지시를 내리거나, 런타임 시 특정 행동을 수행하도록 할 수 있습니다. 어노테이션은 클래스, 메소드, 필드, 매개변수 등에 붙여서 사용합니다.  어노테이션의 정의어노테이션은 @ 기호로 시작하며, 다음과 같은 형태로 정의됩니다.// 어노테이션 정의import java.lang.annotation.*;@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)public @interface MyAnnotation { String value(); int number() default 0;} @Retention: 어노테이션의 유지 정책을 정.. 2024. 7. 18.