본문 바로가기

BackEnd/구 생활코딩 자바

Map<K,V> 인터페이스를 구현하는 컬렉션 클래스들 1. Map 인터페이스를 구현하는 컬렉션 클래스들 - 이 클래스들은 key와 value 방식의 데이터 저장을 한다. - key 는 value를 찾는 열쇠를 의미하며 중복이 불가능하다 - value 는 저장할 데이터를 의미하고 중복이 가능하다 - value 요소의 저장 순서를 유지하지 않는다.2. Map를 구현하는 대표적인 클래스 2가지 1) HashMapHashMap 또한 해시 알고리즘을 기반으로 구현되어 있다.따라서 매우 빠른 검색속도를 보인다.1234567891011121314151617181920212223242526272829303132333435363738import java.util.HashMap;import java.util.Iterator; class a15_IntroHashMap{ pub..
Set<E> 인터페이스를 구현하는 컬렉션 클래스들 1. Set 인터페이스를 구현하는 제네릭 클래스들의 공통점1) 동일한 인스턴스의 중복 저장을 허용하지 않는다.2) 인스턴스의 저장 순서를 유지하지 않는다.3) 즉, 집합의 성격을 지닌다. 2. Set 인터페이스를 구현하는 제네릭 클래스들1) HashSet- HashSet은 중복저장을 판담함에 있어서 기본적으로 인스턴스의 참조값을 기준으로 중복을 판단한다. 그러므로 프로그래머가 equals메소드를 오버라이딩 함으로써 중복저장에 대한 기준을 세워줘야 한다.- HashSet은 해시 알고리즘을 적용하여 hashCode 메소드를 오버라이딩 함으로써 성능을 개선 할 수 있다. 아래는 HashSet이 중복을 허용하지 않고 순서를 유지하지 않음을 보여준다.123456789101112131415161718192021im..
Iterator 를 이용한 인스턴스의 순차적 접근 1. 컬렉션 프레임워크와 Iterator 의 관계자바의 컬렉션 프레임워크는 컬렉션에 저장된 요소를 읽어오는 방법을 Iterator 인터페이스로 표준화하고 있습니다.Collection 인터페이스에는 iterator 라는 이름의 메소드가 정의되어있다.Iterator iterator() { .... }iterator 메소드가 반환하는 참조 값의 인스턴스는 Iterator인터페이스를 구현하고 있다.iterator 메소드의 반환형이 Iterator이니, 반환된 참조값을 이용해서 Iterator에 선언된 함수들을 호출할수있다그러면 컬렉션 인스턴스에 저장된 인스턴스의 순차적 접근이 가능하다.따라서 Collection 인터페이스를 상속받는 List와 Set 인터페이스에서도 iterator() 메소드를 사용할 수 있다...
List<E> 인터페이스를 구현하는 컬렉션 클래스들 1. List 인터페이스를 구현하는 제네릭 클래스들의 공통점1) 동일한 인스턴스의 중복 저장을 허용한다2) 인스턴스의 저장 순서가 유지된다. 2. List 인터페이스를 구현하는 제네릭 클래스들1) ArrayList- ArrayList는 이름이 의미하듯이 배열 기반으로 데이터를 저장한다.- 데이터의 저장을 위해서 인덱스 정보를 별도로 관리할 필요가 없다.- 인데스를 통해 데이터의 참조가 용이해서 빠른 참조가 가능하다.- 데이터의 삭제를 위한 추가적인 코드의 작성이 필요 없다.- 데이터의 삭제에 필요한 연산과정이 매우 길다.- 저장되는 인스턴스의 수에 따라서 크기가 자동으로 늘어나 배열과 달리 길이를 고민하지 않아도 된다.- 저장소의 용량을 늘리는 과정에서 많은 시간이 소요된다. 123456789101112..
컬렉션 프레임워크 1. 컬렉션 프레임워크의 기본적 이해1) 프레임 워크(Framework)란? 생산성을 향상시키기 위한것소프트웨어간의 호환성, 통신성, 유지보수성을 좋게하는 도구소프트웨어를 만들기에 앞서서 큰 골격을 만들고 , 이 골격을 기준으로 삼고 구현하는것.완성품을 만드는데 있어서 하나의 골격잘 정의된, 약속된 구조나 골격잘 정의된, 약속된 구조의 클래스들여러 프로그래머들에 의해 사용되도록, 잘 정의된 클래스들의 모임컬렉션 라이브러리라 하지 않고 컬렉션 프레임워크라 하는것은컬렉션과 관련된 클래스들의 정의에 적용되는 설계의 원칙, 또는 구조가 존재하기 때문이다. 2) 컬렉션 프레임워크란?데이터의 저장, 그리고 이와 관련 있는 알고리즘을 구조화 해놓은 프레임워크다데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을..
Local 클래스와 Anonymous 클래스 Local 클래스: 메소드 내에 정의가 되어서 메소드 내에서만 인스턴스의 생성 및 참조변수의 선언이 가능하다 Anonymous 클래스: 클래스의 이름이 정의되어 있지 않다는 사실에서만 local 클래스와 차이를 보인다.