The Debugging Chronicles : "코드의 미학"

제네릭 배열리스트 컬렉션 프레임 워크 본문

JAVA/자바 수업 내용

제네릭 배열리스트 컬렉션 프레임 워크

sweetseonah1004 2024. 7. 29. 19:37
package class01;

import java.util.ArrayList;

// 컬력션 프레임워크
// 배열리스트
public class Test01 {
	public static void main(String[] args) {
		// 배열[] : 개수가 정해져 있음, 관련성, 자료형
		// 배열리스트 : 개수 무제한 <<< 
		//모든 컬렉션들은 자료형을 제한하지 않고 저장할 수 있음
		// 그러나 , 자료형 제한없이 사용하는 것은 개발자가에게 불리함
		// 자료형 "강제"
		// === 제네릭<> Generic
//		ArrayList  al = new ArrayList();
		ArrayList<Integer> al = new ArrayList();
//		al.add(3.14);
//		al.add("apple");
//		al.add('A');
//		
		al.add(10);
		al.add(100);
		al.add(20);
		al.add(1,123); // 오버로딩

		System.out.println(al); // [10,123, 100, 20] 
		// 최상위 object 클래스로부터
		// toString()을 '오버라이딩'했다 -> AbstaractCollection
		// 세상의 모든 컬렉션들은 오버라이딩 되어 있

		//al.clear();
		boolean ans = al.contains(123);
		System.out.println(ans); //false
		System.out.println(al.get(1)); // 1번 인덱스
		
	    ans = al.isEmpty();
	     System.out.println(ans);
		
		System.out.println(al.size()); // length
		al.remove(1);// 요소 삭제
		System.out.println(al);
		
		
		/*
		 * 배열 리스트 특징
		 * 1)모든 컬렉션이 toString () 오버라이딩 되어 있어서 전체출력이 예쁨
		 * 2) 다양한 메서드들이 이미 만들어져있음
		 * 3) 배열리스트 vs 배열
		 * 	  개수 무제한 vs 개수정해짐
		 * 공통점 : 데이터 관련성 있고 자료형 전해짐
		 * 4) 컬렉션을 쓸때는 원래 자료형 제한이 없어서 자료형을 "강제" 해서 사용 == 제네릭<>
		 * 
		 * 
		 * */
		
	}
}