2022/06/10 3

컬렉션 프레임워크

사용 배경 -배열을 생성할 때 저장할 수 있는 객체 수가 정해지기 때문에 불특정 다수의 객체를 저장하기에 문제가 있다. -배열의 또 다른 문제점은 객체를 삭제했을 때 해당 인덱스가 비게 될 수 있다. -배열의 문제점을 해결하고 자료구조를 바탕으로 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 java.util 패키지에 컬렉션과 관련된 인터페이스와 클래스들이 포함되어 있다. 자바 컬렉션이란? -객체를 수집해서 저장하는 역할을 한다. -주요 인터페이스로는 List, Set, Map이 있다. List 인터페이스의 메서드 기능 메서드 설명 객체 추가 boolean add(E e) 주어진 객체를 맨 끝에 추가 void add(int index, E element) 주어진 인덱스에 객체를 추가 set(int ..

Java 2022.06.10

+27 컬렉션 프레임워크: ArrayList

A c = new B() A 를 쓰되 B 메서드 주소를 쓴다. ArrayList 1. import java.util.*; public class M { public static void main(String[] args) { // 제네릭X // 이름만 다르고 기능 같음 -> ArrayList, Vector, LinkedList ArrayList list = new ArrayList(); //Vector list = new Vector(); //LinkedList list = new LinkedList(); // 추가 list.add("김가가"); list.add("김나나"); list.add("김다다"); list.add("김라라"); list.add("김마마"); // 전체 출력 for(Object o..

수업 2022.06.10

clone

clone() 자신을 복제해 새로운 인스턴스를 생성하는 일을 한다. 어떤 인스턴스에 대해 작업을 할 때, 원래의 인스턴스는 보존하고 clone 메서드를 이용해 새로운 인스턴스를 생성하여 작업을 하면 작업 이전의 값이 보존되므로 작업에 실패해 원래의 상태로 되돌리거나 변경되기 전의 값을 참고하는 데 도움이 된다. Object 클래스에 정의된 clone()은 단순히 인스턴스 변수 값만 복사하기 때문에 참조 타입의 인스턴스 변수가 있는 클래스는 완전한 인스턴스 복제가 이루어지지 않는다. 배열의 경우, 복제된 인스턴스 변수의 값만 복사하기 때문에 복제된 인스턴스 작업이 원래의 인스턴스에 영향을 미치게 된다. 이런 경우 clone 메서드를 오버라이딩해서 새로운 배열을 생성하고 배열의 내용을 복사한다. x=3, y..

Java/정석 2022.06.10