본문 바로가기

분류 전체보기141

제네릭,열거형 제네릭 다양한 타입의 객체를 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입체크,객체나입을 컴파일 시에 체크하기 때문에 객체의 타입 안정성을 높이고 형변환의 번거로움을 줄일수있게 도와줍니다 제네릭의 장점 타입 안전성을 제공 타입체크와 형변환을 생략할 수 있으므로 코드가 간결 제네릭 클래스의 선언 제네릭 타입은 클래스와 메서드에서 선언할수 있습니다. 클래스에서 제네릭 선언 class Box { T item; void setItem(T item) {this.item = item;} T getItem() {return item} } 상황에 맞게 의미있는 문자를 선택해서 사용하는 것이 좋습니다 기호의 종류만 다를 뿐 '임의의 참조형 타입'을 의미한다는 것은 모두 같습니다. Box b = new Box(); /.. 2023. 2. 24.
컬렉션 클래스 정리&요약 2023. 2. 24.
hashSet,TreeSet,HashMap,Hashtable,Collections 해싱과 해시함수 해시함수(hash function)를 이용해 저장하고 검색하는 기법입니다. 해시 테이블(Hash Table) hashSet 중복된 요소를 저장하지 않습니다. 저장순서를 유지하고자 한다면 LinkedHashSet을 사용해야 합니다. class Ex11_9 { public static void main(String[] args) { Object[] objArr = {"1",new Integer(1),"2","2","3","3","4","4","4"}; Set set = new HashSet(); for(int i=0; i < objArr.length; i++) { set.add(objArr[i]); // HashSet에 objArr의 요소들을 저장한다. } // HashSet에 저장된 요소들.. 2023. 2. 24.
Comparator와 Comparable Comparator(기본외) Comparable(기본)(정렬 기준 제공) 모두 인터페이스 컬랙션을 정렬하는데 필요한 메서드를 정의 합니다. 정렬sort() 1.두 대상비교 2.자리바꿈 반복 Comparator와 Comparable은 모두 인터페이스로 컬렉션을 정렬하는데 필요한 메서드를 정의 Comparable을 구현하고 있는 클래스들은 같은 타입의 인스턴스끼리 서로 비교할 수 있는 클래스들, 주로 Integer와 같은 wrapper클래스와 String, Date, File과 같은 것들이며 기본적으로 오름차순, 즉 작은 값에서부터 큰 값의 순으로 정렬되도록 구현되어 있습니다. Comparable을 구현한 클래스는 정렬이 가능하다는 것을 의미합니다 public interface Comparator{ int .. 2023. 2. 24.