Java Server Pages

컬렉션 프레임워크

나주나주 2024. 1. 4. 17:59

Iterator 

반복자 인터페이스, Iterator<E> iterator()

 

메서드 설명
   
   
   
   
   
   
   
   

List

컬렉션 프레임 워크의 주요 인터페이스

 

ArrayList

: 단일 스레드

객체 저장 X, 객체의 번지 참조

동일한 객체를 중복 저장할 수 있는데 이 경우 동일한 번지를 참조한다

null 저장 가능, 그러나 해당 인덱스는 객체를 참조하지 않는다

 

Vector

:멀티 스레드

동기화된 메서드로 구성되어 있기 때문에 동시에 수정 할 수 없다 (하나의 스레드가 실행 완료 시 다른 스레드 실행 가능)

 

LinkedList

: 인접 참조를 연결하는 체인 구조

 

 

Set

index가 없어 저장 순서가 유지되지 않는다 → 수정은 불가능하다. 저장된 객체를 하나씩 가져오는 iterator 반복자로 출력 한다, 

import java.util.HashSet;
import java.util.iterator;
import java.util.Set;

public class HashSetExam {
	public static void main(String[] args) {
    
    Set<String> set = new HashSet<>();
    set.add("Java");
	set.add("JDBC");
	set.add("Servlet/Jsp");
    

	Iterator<String> it = set.iterator();
    
    while(it.hasNext()) {
    String element = it.next();
    System.out.println(element);
    }
}
}

HashSet

LinkedHashSet

 

TreeSet

 

 

Map

key(중복 및 공유 불가)와 value(중복 및 공유 가능)로 이루어진 Entry(쌍)

메서드 설명
put (K key, V Value) 주어진 키와 값을 추가, 저장되면 값 리턴
containsKey(Object key) 키 유무
containsValue(Object value) 값 유무
get(Object key) 주어진 키의 리턴
isEmpty() 컬렉션이 비어있는지
Collection<V>values 저장된 모든 값을 Collection에 담아 반환

 

HashMap

 

LinkedHashMap

 

Hashtable

 

properties

Key = value 형식, 파라미터 정보들을 저장하기 위한 파일 확장자, HashTable의 하위 클래스

애플리케이션의 옵션 정보, DB 연결 정보, 다국어 정보가 저장된 프로퍼티 파일을 읽을 때 사용

주석 처리를 하고 싶은 경우: # !

package ch14.map.properties;

import java.io.FileReader;
import java.net.URLDecoder;
import java.util.Properties;

public class PropertiesExam {
	public static void main(String[] args) throws Exception {
    //프로퍼티로 만든 텍스트를 K, V 형식으로 불러오는 기법
    Properties p = new Properties();
    //PropertiesExam.java가 있는 경로를 변수에 넣음
    String path = PropertiesExam.class.getResource("database.properties").getPath();
    path = URLDecoder.decode(path, "UTF-8"); //파일 인코딩. 여러 예외가 발생할 수 있어 Exception으로 처리
    p.load(new FileReader(path)); //찾은 경로와 파일명으로 불러오기
    
    String driver = p.getProperty("driver");
    System.out.println("드라이버: " + driver);
    }
}

'Java Server Pages' 카테고리의 다른 글

JSP 클라이언트 에러 암기  (0) 2024.01.31
Servlet  (0) 2024.01.30
JDBC를 이용하는 프로그램 작성  (0) 2024.01.16
Java Data Base Connectivity  (0) 2024.01.15
스레드, 제네릭  (1) 2024.01.04