전체 글(89)
-
컬렉션 프레임워크 전체 정리
자바 컬렉션 프레임워크 주요 기능자바 컬렉션 프레임워크는 데이터 그룹을 저장하고 처리하기 위한 통합 아케텍처를 제공한다. 이 프레임워크는 인터페이스, 구현, 알고리즘으로 구성되어 있으며, 다양한 타입의 컬렉션을 효율적으로 처리할 수 있게 해준다. 여기서 컬렉션이란 객체의 그룹이나 집합을 의미한다. Collection 인터페이스의 필요성Collection인터페이스는 자바 컬렉션 프레임워크의 가장 기본적인 인터페이스로, 자바에서 데이터 그룹을 다루는 데 필요한 가장 기본적인 메서드들을 정의한다. 그리고 다양한 컬렉션 타입들이 공통적으로 따라야 하는 기본 규약을 정의한다. List, Set, Queue와 같은 더 구체적인 컬렉션 인터페이스들은 모두 Collection 인터페이스를 확장(extend)하여, 공통..
2024.06.29 -
컬렉션 유틸
컬렉션을 편하게 다룰 수 있는 다양한 기능을 알아보자.package collection.utils;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class CollectionsSortMain { public static void main(String[] args) { List list = new ArrayList(); list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); Integer max = Collections.max(list); ..
2024.06.29 -
정렬3 - Comparable, Comparator
정렬은 배열 뿐만 아니라 순서가 있는 List 같은 자료 구조에도 사용할 수 있다. List와 정렬package collection.compare;import java.util.LinkedList;import java.util.List;public class SortMain4 { public static void main(String[] args) { MyUser myUser1 = new MyUser("a",30); MyUser myUser2 = new MyUser("b",20); MyUser myUser3 = new MyUser("c",10); List list = new LinkedList(); list.add(myUser1); ..
2024.06.23 -
정렬2 - Comparable, Comparator
자바가 기본으로 제공하는 Integer, String 같은 개게를 제외하고 MyUser와 같이 직접 만든 객체를 정렬하려면 어떻게 해야 할까? 내가 만든 객체이기 때문에 정렬을 할 때 내가 만든 두 객체 중에 어떤 객체가 더 큰지 알려줄 방법이 있어야 한다.이때는 Comparable 인터페이스를 구현하면 된다. 이 인터페이스는 이름 그대로 비교 가능한, 비교할 수 있는 이라는 뜻으로, 객체에 비교 기능을 추가해준다. public interface Comparable{ public int compareTo(T o);}자기 자신과 인수로 넘어온 객체를 비교해서 반환하면 된다.현재 객체가 인수로 주어진 객체보다 더 작으면 음수두 객체의 크기가 같으면 0현재 객체가 인수로 주어진 객체보다 더 크면 양수 pack..
2024.06.23 -
정렬1 - Comparable, Comparator
데이터를 정렬하는 방법을 알아보자. package collection.compare;import java.util.Arrays;public class SortMain1 { public static void main(String[] args) { Integer[] array={3,2,1}; System.out.println(Arrays.toString(array)); System.out.println("기본 정렬 후"); Arrays.sort(array); System.out.println(Arrays.toString(array)); }} 실행 결과[3, 2, 1]기본 정렬 후[1, 2, 3]Arrays.sort()를 사용하면 배열에..
2024.06.23 -
순회3 - 자바가 제공하는 Iterable, Iterator
자바 컬렉션 프레임워크는 배열 리스트, 연결 리스트, 해시 셋, 연결 해시 셋, 트리 셋 등등 다양한 자료 구조를 제공한다.자바는 컬렉션 프레임워크를 사용하는 개발자가 편리하고 일관된 방법으로 자료 구조를 순회할 수 있도록 Iterable 인터페이스를 제공하고, 이미 각각의 구현체에 맞는 Iterator도 다 구현해두었다.자바 Collection 인터페이스의 상위에 Iterable이 있다는 것은 모든 컬렉션을 Iterable과 Iterator를 사용해서 순회할 수 있다는 뜻이다.Map의 경우 Key뿐만 아니라 Value까지 있기 때문에 바로 순회를 할 수는 없다. 대신에 Key나 Value를 정해서 순회할 수 있는데, KeySet(), Values()를 호출하면 Set, Collection을 반환하기 때..
2024.06.21