Set
1. Set 개념
set이란?
•
객체를 저장하는 자료구조
•
list와 달리 저장 순서는 유지하지 않는다.
•
중복 제거,
•
HashSet, LinkedHashSet, TreeSet이 있다.
•
인덱스가 없다.
set 메소드
Iterator 메소드
예제)Iterator 메소드 활용
2. HashSet
HashSet
•
set 인터페이스의 구현 클래스이다.
•
Set<E> set = new HashSet<E>();
•
객체를 저장하기 전 해시코드를 활용하여 이전 객체에 같은 해시코드가 있는지 확인 후 객체를 추가한다.
HashSet
예제)HashSet
Map
1. Map의 개념
map
•
map 컬렉션은 키와 값으로 구성된 entry 객체를 저장하는 구조를 가지고 있다.
◦
키와 값은 모두 객체이다. (primitive 타입이 아니다.)
•
키는 중복 저장이 안되지만, 값은 중복 저장이 가능하다.
◦
기존에 있는 키를 다시 저장하려고 하면 기존의 키의 값은 없어시고 새로운 키의 값이 저장된다.
•
HashMap, Hashtable, LinkedHashMap, Properties, TreeMap 등이 있다.
map 인터페이스의 메소드
2. HashMap
HashMap
•
hashcode란?
◦
key값을 hashcode() 함수에 매개변수로 전달하면 value의 index값이 나온다.
•
Map<K,V> map = new HashMap<K,V>();
•
key값으로 인덱스를 찾고 그 인덱스의 value값을 가져온다.(저장한다)
•
대량의 데이터를 빠르게 찾을 수 있다.
HashMap 활용
예제)HashMap 활용
File 읽기
1. FileReader
FileReader
•
character파일을 읽을 수 있는 기능을 제공한다.
•
read()메소드를 사용하여 char를 한 글자씩 읽어올 수 있다.
•
더 이상 읽을 글자가 없으면, -1을 리턴한다.
2. BufferedReader
BufferedReader
•
버퍼를 사용하여 외부 출력을 하기 때문에 효율적이다.
•
public BufferedReader(Reader in, int sz)
•
첫번째 파라미터는 reader 객체를 전달한다.
•
두번째 파라미터는 버퍼의 사이즈를 전달한다.
◦
버퍼의 기본 사이즈는 8KB이다.
3. 파일 읽어오기
한글자씩 읽기
예제) 파일을 한글자씩 읽기
한 줄씩 읽기
예제) 파일을 한줄씩 읽기