목록컬렉션 (4)
삶 가운데 남긴 기록 AACII.TISTORY.COM
스트림 stream 자바7이전에는 컬렉션 순차처리를 위해 Iterator를 사용했지만 자바8부터 추가된 컬렉션(배열)을 람다식으로 처리할 수 있도록 해줍니다. BaseStream을 부모로하는 IntStream, LongStream, DoubleStream, Stream 들로 구성되어 있습니다. import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.stream.Stream; public class IteratorStreamEx { public static void main(String[] args) { List list = Arrays.asList("홍길동", "고길동","김길동"); //Java..
이진 트리(binary tree) 구조 검색을 위해서는 우선 정렬이 되어 있어야 하는데, 이때 정렬을 위해 이진트리구조를 이용합니다. 이진 트리 구조에 대한 자세한 내용은 생략하도록 하겠습니다. TreeSet 이진트리 기반 Set 컬렉션입니다. value와 왼쪽노드, 오른쪽노드로 구성됩니다. import java.util.NavigableSet; import java.util.TreeSet; public class TreeSetEx { public static void main(String[] args) { TreeSet scores = new TreeSet(); scores.add(new Integer(97)); scores.add(new Integer(78)); scores.add(new Intege..
Map key와 value로 구성된 객체를 저장하는 구조입니다. 여기서 key와 value는 모두 객체입니다. key는 중복될 수 없지만 값은 중복될 수 있습니다. 여기서 key는 중복을 허용하지 않으므로 set과 동일한 구조를 가진 객체입니다. 그래서 key는 keySet 형태로 저정되어 keySet() 메서드를 통해 얻을 수 있습니다. 만약 동일한 key로 value값을 저장하면 나중에 저장한 값으로 기존값이 대체되는 겁니다. HashMap, Hashtable, LinkedHashMap, Properties, TreeMap 등이 있습니다. HashMap import java.util.HashMap; import java.util.Iterator; import java.util.Map; import j..
Set 순서를 유지하지 않고, 중복을 허용하지 않는 컬렉션 입니다. 수학에서의 집합과 유사한 개념입니다. 순서나 인덱스가 없기 때문에 Iterator 를 이용해서 값에 접근해야 합니다. HashSet Set 인터페이스를 구현한 클래스 입니다. HashSet은 객체를 저장하기 전에 객체의 해시코드를 얻어내고 이미 저장되어 있는 객체들의 해시코드와 비교해서 중복된 값이 있는지 검사합니다. public class HashSetEx { public static void main(String[] args) { Set set = new HashSet(); set.add("Java"); set.add("JDBC"); set.add("Servlet"); set.add("Java");//중복해서 저장되지 않음 set.a..