반응형

전체 글 2934

[Java 언어 활용] 3.4.2 Vector를 이용하여 인덱스로 관리하기

[Java 언어 활용] 3.4.2 Vector를 이용하여 인덱스로 관리하기 Vector 클래스를 사용할 때 확장 가능한 특징을 반드시 사용할 필요는 없습니다. Vector 클래스는 내부적인 저장소는 선형적인 형태이므로 특정 인덱스에 보관할 개체가 정해져 있다면 빠르게 추가, 변경, 삭제 등을 할 수 있습니다. 만약 보관할 자료에 일련 번호가 있고 최대 일련 번호가 정해져 있다면 인덱스로 관리하는 것이 처리 속도를 높이는 데 기여합니다. 먼저 Vector 컬렉션을 생성할 때 최대 일련 번호를 입력 인자를 전달하여 생성합니다. 그리고 반복문으로 최대 일련 번호 개수 만큼의 null을 추가합니다. 이는 이 후 해당 인덱스에 유효한 개체를 보관한 것인지 판별하는 주요한 기준으로 사용합니다. public Memb..

[Java 언어 활용] 3.4.1 Vector를 이용하여 특정 키 순으로 보관하기

[Java 언어 활용] 3.4.1 Vector를 이용하여 특정 키 순으로 보관하기 Vector 클래스는 Collecion 인터페이스에 약속한 기능 외에도 추가적으로 제공하는 기능들이 있습니다. 내부적으로 Vector 클래스는 선형적인 저장소를 갖고 있으며 저장소의 크기를 확장할 수 있어 확장 배열이라고 볼 수 있습니다. Vector 컬렉션에 자료를 보관할 때 add(Object ojb) 메서드를 이용하면 순차적으로 보관합니다. 그런데 Vector 클래스에서는 add(int index, Object obj) 메서드를 이용하면 원하는 위치에 자료를 보관할 수 있습니다. 만약 현재 A, B, C, D를 보관한 상태에서 add(2,F)를 호출하면 A, B, F, C, D 순으로 보관합니다. 즉 첫 번째 전달하는..

[Java 언어 활용] 3.4 Vector 클래스

[Java 언어 활용] 3.4 Vector 클래스 Java 언어에서 배열은 생성할 때 크기를 결정할 수 있어야 합니다. 하지만 미리 크게 설정하면 메모리 효율을 떨어지고 작게 설정하면 충분한 개체를 보관할 수 없습니다. Vector는 확장 가능한 배열로 저장소가 꽉 차면 자동으로 저장소의 크기를 늘려주기 때문에 유연하게 사용할 수 있습니다. 그리고 Vector 클래스는 Collection 인터페이스를 기반으로 구현한 List 클래스에서 파생한 클래스입니다. 따라서 Vector 클래스에는 Collection 인터페이스에 약속한 기능들을 사용할 수 있습니다. 물론 Vector 클래스에서 추가적으로 제공하는 기능들도 있습니다. 먼저 Vector 클래스로 Collection 인터페이스에 약속한 기능을 사용하는 ..

[Java 언어 활용] 3.3 Collection 인터페이스

[Java 언어 활용] 3.3 Collection 인터페이스 Collection 인터페이스는 자료구조를 구현한 다양한 클래스들의 공통적인 기능을 약속한 인터페이스입니다. 이는 Collection을 기반으로 구현한 클래스들을 사용하는 방법을 일관화하여 사용하는 개발자의 학습 비용을 줄여주는 역할을 합니다. [그림 3.2] Collection 인터페이스와 구현 클래스 계층 구조 Collection 인터페이스를 기반으로 구현한 클래스에는 List와 Set이 있습니다. 그리고 List를 기반으로 파생한 클래스로 Vector, Stack, ArrayList, LinkedList가 있고 Set을 기반으로 파생한 클래스로 StoredSet과 HashSet이 있습니다. 따라서 이러한 클래스들의 사용법의 공통적인 부분은..

[C++ 무료 동영상 강의] 43. 상속과 다형성 최종 실습 – 파생 클래스

[C++ 무료 동영상 강의] 43. 상속과 다형성 최종 실습 – 파생 클래스 다루는 내용상속과 다형성,파생 클래스 구현, 개체 사용 부분 구현 앞으로 프로그래밍 관련 글은 새롭게 개설한 언제나 휴일 전용 사이트에서 만나보세요. 2017년 1월 1일까지 이 곳의 프로그래밍 자료는 http://ehpub.co.kr 로 옮길 예정입니다. 본문[디딤돌 C++] 43. 상속과 다형성 최종 실습 – 파생 클래스

[C++ 무료 동영상 강의] 42. 상속과 다형성 최종 실습 – 학생

[C++ 무료 동영상 강의] 42. 상속과 다형성 최종 실습 – 학생 다루는 내용상속과 다형성,기반 클래스 구현, 정적 클래스 앞으로 프로그래밍 관련 글은 새롭게 개설한 언제나 휴일 전용 사이트에서 만나보세요. 2017년 1월 1일까지 이 곳의 프로그래밍 자료는 http://ehpub.co.kr 로 옮길 예정입니다. 본문[디딤돌 C++] 42. 상속과 다형성 최종 실습 – 학생

[C++ 무료 동영상 강의] 41. 상속과 다형성 최종 실습 시나리오

[C++ 무료 동영상 강의] 41. 상속과 다형성 최종 실습 시나리오 다루는 내용상속과 다형성, 실습 시나리오 앞으로 프로그래밍 관련 글은 새롭게 개설한 언제나 휴일 전용 사이트에서 만나보세요. 2017년 1월 1일까지 이 곳의 프로그래밍 자료는 http://ehpub.co.kr 로 옮길 예정입니다. 본문[디딤돌 C++] 41. 상속과 다형성 최종 실습 시나리오

[바로크 시대 바흐(Bach]] INVENTION NO.1 BMV 772

[바로크 시대 바흐(Bach]] INVENTION NO.1 BMV772작곡가 요한 제바스티안 바흐(Johann Sebastian Bach, 1685년 3월 21일 ~ 1750년 7월 28일)독일의 작곡가“음악의 아버지”, 바흐는 바로크 시대(Baroque Era)에 대위법(두 개 이상의 독립적인 선유을 조화롭게 배치하는 작곡 기술)의 정수를 다한 작곡가입니다. 바흐의 음악은 1802년 독일 음악사학자인 포르켈의 연구서 “바흐의 생애와 예술, 그리고 작품(Uber Johann Sebastian Bachs Leben, Kunst und Kunstwerke)”를 통해 재평가를 받기 시작하였습니다. 인벤션(INVENTION)은 바흐의 자필 원고에 써 놓았던 “Inventio”에서 유래한 명칭으로 “착상”이라는 ..

[Java 언어 활용] 3.2 컬렉션

[Java 언어 활용] 3.2 컬렉션 컬렉션이란 자료구조를 표현한 형식을 말하는 용어입니다. Java 언어에서 라이브러리로 제공하는 대표적인 컬렉션에는 동적 배열을 표현한 Vector, 연결리스트를 표현한 LinkedList, 이진 탐색 트리를 표현한 Set, 그리고 Stack, Queue 등을 제공합니다. 이와 같은 형식들은 Collection 인터페이스를 기반으로 구현한 클래스입니다. 그리고 키와 값을 쌍으로 보관할 수 있는 Map 인터페이스를 정의하였고 이를 기반으로 구현한 HashTable 클래스 등의 컬렉션들이 있습니다. 이 외에도 다양한 컬렉션을 제공하는데 실제 개발할 때 모든 컬렉션 사용법을 익혀야 하는 것은 아닙니다. 이들은 대부분 Collection 인터페이스를 기반으로 구현한 클래스들이..

[Java 언어 활용] 3.1 제네릭(Generic)

[Java 언어 활용] 3.1 제네릭(Generic) 제네릭(Generic)은 여러 형식에 맞게 재사용할 수 있는 코드를 정의하는 기술을 말합니다. 제네릭 코드를 정의할 때는 가상의 형식 이름을 처럼 정의하고 사용하는 곳에서 어떠한 형식에 관한 코드를 사용할 것인지 명시하여 사용하는 기법입니다. 먼저 제네릭 클래스를 정의할 때는 클래스명 뒤에 을 명시하여 만들 수 있습니다. class 클래스명{ } 사용하는 곳에서는 가상 형식 이름 대신 구체적으로 사용할 형식을 결정하여 을 명시하여 사용합니다. 클래스명 변수명 = new 클래스명(); 다음은 정수 형식을 보관하는 정수 적 배열 클래스와 제네릭 형식으로 원하는 형식을 사용자가 결정할 수 있는 제네릭 동적 배열 클래스를 정의한 것입니다. ▷ 소스 3.1 정..

반응형