본문 바로가기

개발/Java collection framework5

[Java] LIFO와 FIFO 컬랙션 후입선출(LIFO)은 나중에 넣은 객체가 먼저 빠져나가는 자료구조를 말한다. 선입선출(FIFO)은 먼저 넣은 객체가 먼저 빠져나가는 구조를 말한다. 컬렉션 프레임워크에는 LIFO 자료구조를 제공하는 스택(Stack)클래스와 FIFO 자료구조를 제공하는 큐 인터페이스를 제공 Stack Stack 클래스는 LIFO 자료구조를 구현한 클래스 이다. 밑에는 Stack 클래스의 주요 메소드들이다. 리턴타입 메소드 설명 E Push(E item) 주어진 객체를 스택에 넣는다. E peek() 스택의 맨 위 객체를 가져온다. 객체를 스택에서 제거하지 않는다. E pop() 스택의 맨 위 객체를 가져온다. 객체를 스택에서 제거한다. Stack stack = new Stack(); package Part15_프레임워크... 2021. 6. 15.
[Java] Map 컬랙션 Map 컬랙션은 키(Key)와 값(Value)으로 구성된 Entry객체를 저장하는 구조를 가지고 있다. 키와 값은 모두 객체이다. 키는 중복될수 없지만 값은 중복 될수 있다. 만약에 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대치 된다. Map 컬랙션의 대표 HashMap HashTable LinkedHashMap Properties TreeMap 매개 변수 타입과 리턴 타입에 K와 V라는 타입 파라미터가 있는데, 이것은 Map 인터페이스가 제네릭 타입이기 때문 객체 추가는 put() 메소드를 사용 키로 객체를 찾아올 때에는 get()메소드를 사용 객체 삭제는 remove() 메소드를 사용한다. 키를 알고 있다면 get()메소드로 간단하게 객체를 찾아오지만 저장된 .. 2021. 6. 15.
[JAVA] Set 컬랙션 List 컬랙션은 저장 순서를 유지하지만, Set 컬랙션은 저장 순서가 유지되지 않는다. 또한 객체를 중복해서 저장할 수 없고, 하나의 null만 저장할 수 있다. 수학의 집합에 비유 집합은 순서와 상관없고 중복이 허용되지 않기 때문. 들어갈 때의 순서가 다를 수도 있기 때문. Set 컬랙션은 인덱스로 객체를 검색해서 가져오는 메소드가 없다. 대신 전체 객체를 대상으로 한번씩 반복해서 가져오는 반복자(Iterator)를 제공한다. Set set = ...; Iterator iterator = set.iterator(); 리턴 타입 매소드명 설명 boolean hasNext() 가져올 객체가 있으면 true / 반대 false E next() 컬랙션에서 하나의 객체를 가져온다. void remove() S.. 2021. 6. 15.
[Java] List 컬랙션 List 이론 정리 List 컬랙션은 객체를 일려로 늘어놓은 구조를 가지고 있다. 객체를 인덱스로 관리하기 때문에 객체를 저장하면 자동 인덱스가 부여되고 인덱스로 객체를 검색, 삭제 할 수 있는 기능을 제공 List 컬랙션은 객체 자체를 저장하는 것이 아니라 객체의 번지를 참고한다. 동일한 객체를 저장할 수 있는데 이 경우에는 동일한 번지를 참고 한다. 또한 null도 저장이 가능이 경우 해당 Index는 객체를 참고 하지않는다. List 컬랙션에는 대표적 3가지 ArrayList Vector LinkedList 1. ArrayList arrayList는 List 인터페이스의 구현 클래스로 ArrayList에 객체를 추가하면 객체가 인덱스로 관리 된다. 일반 배열과 ArrayList는 Index로 객체를.. 2021. 6. 11.