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 |