'자료구조'에 해당되는 글 1건

  1. 2009.07.15 자바 자료구조 2

자바 자료구조

JAVA 2009. 7. 15. 11:00

* String

   String[] tokens = string.split(",") ;

 

* Collection

   Collection.sort(List list)  - 리스트에 있는 내용을 알파벳순으로 정렬.

   단 list에 있는 item이 Comparable이 구현되어 있어야 합니다. 즉 목록에 있는 원소의 compareTo() 메소드에 의해 순서가 정렬됨. 

      class ExamItem implements Comparable<ExamItem> {

         ...

         public int compareTo(ExamItem s) {

            /* 리턴값 : 음수 - 인자로 전달된 값이 더 크다, 양수 - 인자로 전달된 값이 더 작다. */

         }     

      }

   Collection.sort(List o, Comparator c) - Comparator의 compare() 메소드을 호출하여 정렬

 

* ArrayList

   ArrayList<String> list = new ArrayList<String> () ;

   System.out.println(list) ;

   ** 참고: System.out.println(aObject or aList) :

       리스트(객체)에 있는 toString()메소드을 호출, 기본적으로 제공되는 유일 식별자 코드 말고

       다른 걸 출력하고 싶다면 이 메소드를 오버라이드 합니다.

   ** 메소드를 선언할 때 인자유형을 ArrayList<Animal>로 선언하면  Animal의 하위 클래스로 된 ArrayList<Dog>나 ArrayList<Cat>은 인자로 받지 못합니다.

   ** 위의 문제점을 해결하기 위해서는 와일드카드을 사용합니다.

       public void takeAnimal(ArrayList<? extends Animal> animal) {...} 또는

       public <T extends Animal>void takeAnimal(ArrayList<T> animal)

       단 선언할 때 <?>와일드카드를 사용하면 컴파일러에서 목록에 뭔가를 추가하는 작업을 전혀 허가하지 않게 됩니다.

 

* TreeSet

   원소들을 정렬된 상태로 유지(알파벳순서대로 정렬)하며 원소가 중복되어 들어가지 않게 해줍니다. TreeSet을 사용하려면 아래의 두가지 조건 중 하나는 만족하여야 합니다.

   ** 집합에 들어가는 원소가 Comparable을 구현하는 유형이어야 합니다.

   ** Comparator를 인자로 받아들이는 TreeSet의 오버로드된 생성자를 사용합니다.

       public class BookCompare implements Comparator<Book> {

          public int compare(Book one, Book two) { return ( ...) } ;  

       }

       class Test {

          Bookcompare bCompare = new BookCompare() ;

          TreeSet<Book> tree = new TreeSet<Book>(bCompare) ;

          ...

      }

* HaspMap

   원소들을 이름/값 쌍 형식으로 저장하고 접근할 수 있게 해줍니다.

 

* LinkedList

   컬렉션 중간에서 원소를 추가하거나 삭제하는 작업을 더 빠르게 처리할 수 있게 해줍니다.

 

* HashSet

   컬렉션 중복된 원소가 들어가지 않도록 해주고, 컬렉션 내에서 어떤 원소를 빠르게 찾을 수 있게 해줍니다.

 

* LinkedHaspMap  

   일반 HaspMap과 거의 똑같지만 원소(이름/값 쌍)가 삽입된 순서를 그대로 유지시켜줄 수도 있고, 원소의 마지막으로 접근했던 순서를 기억하도록 설정할 수 있다는 점이 다릅니다.

     

[출처] 자바 자료구조.|작성자 좋은일


Posted by 철냄비짱
,