Java 프로그래밍에서의 vector 클래스 학습 노트

5112 단어 Javavector
java.util.vector는 동적 수조와 유사한 기능을 실현하기 위해 벡터 클래스 (vector) 를 제공합니다.자바 언어에는 바늘의 개념이 없지만 바늘을 정확하고 유연하게 사용하면 프로그램의 질을 크게 높일 수 있다.예를 들어 c, c++에서 이른바'동적 수조'는 일반적으로 지침에 의해 실현된다.이 단점을 보완하기 위해 자바는 프로그래머들이 사용하기 편리하도록 풍부한 라이브러리를 제공했다.vector류가 그 중의 하나이다.사실상 수조를 유연하게 사용해도 벡터류의 기능을 완성할 수 있지만 벡터류에 대량의 방법을 제공하여 사용자의 사용을 크게 편리하게 한다.
벡터 클래스의 대상을 만들면 다른 클래스의 대상을 임의로 삽입할 수 있습니다. 즉, 유형을 고려하지 않고 미리 선택한 벡터 용량을 필요로 하지 않으며 쉽게 찾을 수 있습니다.미리 모르거나 수조의 크기를 미리 정의하지 않으려면 자주 검색, 삽입, 삭제 작업을 해야 한다.벡터 클래스 사용을 고려할 수 있습니다.
Vector 클래스는 동적 배열을 구현합니다.ArrayList와 비슷하지만 두 가지는 다릅니다.
  • Vector는 동기식 액세스..
  • Vector는 많은 전통적인 방법을 포함하고 있으며, 이러한 방법은 집합 프레임워크에 속하지 않는다
  • Vector는 수조의 크기를 사전에 모르거나 크기를 바꿀 수 있는 수조가 필요한 경우에 주로 사용됩니다
  • Vector 클래스는 4가지 구조 방법을 지원합니다.
    1. 첫 번째 구조 방법은 기본 벡터를 만듭니다. 기본 크기는 10입니다.
    Vector()
    2. 두 번째 구조 방법은 지정된 크기의 벡터를 생성합니다.
    Vector(int size)
    3. 세 번째 구조 방법은 지정된 크기의 벡터를 만들고 증가량은 incr로 지정합니다.증량은 벡터가 매번 증가하는 원소의 수를 나타낸다.
    Vector(int size,int incr)
    4. 네 번째 구조 방법은 집합 c 요소를 포함하는 벡터를 만듭니다.
    Vector(Collection c)
    첫 번째 방법을 사용하면 두 가지 방법으로 벡터를 자동으로 관리할 수 있습니다.시스템은 매개 변수에 따라 initialcapacity에서 벡터 대상의 용량(즉 벡터 대상이 저장할 수 있는 데이터의 크기)을 설정합니다. 실제로 저장된 데이터의 개수가 용량을 초과할 때.시스템은 벡터 대상의 저장 용량을 확충할 것이다.
    매개 변수capacityincrement는 매번 확장된 확장 값을 지정합니다.capacityincrement가 0일 때 두 배로 확장하지 않고 이 기능을 이용하여 저장을 최적화할 수 있습니다.Vector 클래스에서는 사용자가 편리하게 사용할 수 있는 다양한 방법을 제공합니다.
    삽입 기능:
    (1)public final synchronized void adddElement(Object obj)
    obj를 벡터의 끝에 삽입합니다.obj는 모든 종류의 대상이 될 수 있습니다.같은 벡터 대상에 대해서도 다른 종류의 대상을 삽입할 수 있다.그러나 삽입된 것은 수치가 아니라 대상이어야 하기 때문에 수치를 삽입할 때 수조를 상응하는 대상으로 바꾸는 것을 주의해야 한다.
    예를 들어 정수 1을 삽입할 때 v1을 직접 호출하지 마십시오.addElement(1), 올바른 방법:
    
    Vector v1 = new Vector(); 
    Integer integer1 = new Integer(1); 
    v1.addElement(integer1); 
    
    (2)public final synchronized void setElementAt(Object obj,int index)
    index에 있는 대상을obj로 설정하면 원래 대상은 덮어씁니다.
    (3)public final synchronized void insertElement(Object obj,int index)
    index가 지정한 위치에 obj를 삽입하면 원래의 대상과 이후의 대상이 순서대로 뒤로 순연됩니다.
    제거 기능:
    (1)public final synchronized void removeElement(Object obj)
    벡터에서 obj를 삭제하고 여러 개가 존재하면 벡터 헤더부터 시도하여 찾은 첫 번째 obj와 같은 벡터 구성원을 삭제합니다.
    (2)public final synchronized void removeAllElement();
    벡터 모든 객체 삭제하기
    (3)public fianl synchronized void removeElementAt(int index)
    index가 가리키는 곳의 대상을 삭제합니다
    검색 기능:
    (1)public final int indexOf(Object obj)
    벡터 헤더에서obj를 검색하고 첫 번째 obj에 대응하는 아래 표식을 되돌려줍니다. 이 obj가 존재하지 않으면 -1로 되돌려줍니다.
    (2)public final synchronized int indexOf(Object obj,int index)
    index가 표시한 아래 표시된 곳에서obj를 검색합니다.
    (3)public final int lastindexOf(Object obj)
    벡터 끝부분부터 obj를 역방향으로 검색합니다.
    (4)public final synchornized int lastIndex(Object obj,int index)
    index가 표시하는 아래 표에서 끝에서 끝까지 obj를 역방향으로 검색합니다.
    (5)public final synchornized firstElement()
    벡터 대상의 첫 obj 가져오기
    (6)public final synchornized Object lastElement()
    벡터 대상의 마지막 obj 가져오기
    인스턴스
    다음 절차에서는 이 컬렉션이 지원하는 몇 가지 방법을 설명합니다.
    
    import java.util.*;
    
    public class VectorDemo {
    
      public static void main(String args[]) {
       // initial size is 3, increment is 2
       Vector v = new Vector(3, 2);
       System.out.println("Initial size: " + v.size());
       System.out.println("Initial capacity: " +
       v.capacity());
       v.addElement(new Integer(1));
       v.addElement(new Integer(2));
       v.addElement(new Integer(3));
       v.addElement(new Integer(4));
       System.out.println("Capacity after four additions: " +
         v.capacity());
    
       v.addElement(new Double(5.45));
       System.out.println("Current capacity: " +
       v.capacity());
       v.addElement(new Double(6.08));
       v.addElement(new Integer(7));
       System.out.println("Current capacity: " +
       v.capacity());
       v.addElement(new Float(9.4));
       v.addElement(new Integer(10));
       System.out.println("Current capacity: " +
       v.capacity());
       v.addElement(new Integer(11));
       v.addElement(new Integer(12));
       System.out.println("First element: " +
         (Integer)v.firstElement());
       System.out.println("Last element: " +
         (Integer)v.lastElement());
       if(v.contains(new Integer(3)))
         System.out.println("Vector contains 3.");
       // enumerate the elements in the vector.
       Enumeration vEnum = v.elements();
       System.out.println("
    Elements in vector:"); while(vEnum.hasMoreElements()) System.out.print(vEnum.nextElement() + " "); System.out.println(); } }
    위의 인스턴스 컴파일 실행 결과는 다음과 같습니다.
    
    Initial size: 0
    Initial capacity: 3
    Capacity after four additions: 5
    Current capacity: 5
    Current capacity: 7
    Current capacity: 9
    First element: 1
    Last element: 12
    Vector contains 3.
    
    Elements in vector:
    1 2 3 4 5.45 6.08 7 9.4 10 11 12
    
    

    좋은 웹페이지 즐겨찾기