>  기사  >  Java  >  Java 프로그래밍의 벡터 클래스 사용에 대한 연구 노트

Java 프로그래밍의 벡터 클래스 사용에 대한 연구 노트

黄舟
黄舟원래의
2017-01-20 11:05:191661검색

벡터는 일반적으로 동적 배열, 즉 자동으로 증가하는 객체 배열을 구현하는 데 사용됩니다. C++와 마찬가지로 벡터 클래스도 Java에 내장되어 있습니다.

java.util.Vector는 동적 배열과 유사한 기능을 구현하기 위한 벡터 클래스(벡터)를 제공합니다. 자바 언어에는 포인터라는 개념이 없지만, 포인터를 정확하고 유연하게 사용한다면 프로그램의 품질은 확실히 크게 향상될 수 있다. 예를 들어, C 및 C++의 소위 "동적 배열"은 일반적으로 포인터로 구현됩니다. 이러한 단점을 보완하기 위해 Java는 프로그래머가 쉽게 사용할 수 있도록 풍부한 클래스 라이브러리를 제공하는데, 벡터 클래스가 그 중 하나입니다. 실제로 배열을 유연하게 사용하면 벡터 클래스의 기능도 완성할 수 있지만, 벡터 클래스는 많은 메서드를 제공하므로 사용자 사용이 크게 간편해집니다.
벡터 클래스 개체를 생성한 후 벡터의 유형을 고려하거나 벡터의 용량을 미리 선택하지 않고도 다른 클래스의 개체를 마음대로 삽입할 수 있으며 쉽게 검색할 수 있습니다. 배열 크기를 알 수 없거나 미리 정의하기를 꺼려하고 빈번한 검색, 삽입 및 삭제가 필요한 상황에 사용됩니다. 벡터 클래스 사용을 고려해보세요.
Vector 클래스는 동적 배열을 구현합니다. ArrayList와 유사하지만 다릅니다.

벡터는 동기적으로 액세스됩니다.

Vector에는 컬렉션 프레임워크의 일부가 아닌 전통적인 방법이 많이 포함되어 있습니다.

Vector는 배열의 크기를 미리 알 수 없거나 크기를 변경할 수 있는 배열만 필요한 경우에 주로 사용됩니다.

Vector 클래스는 4가지 구성 방법을 지원합니다.

1. 첫 번째 생성 방법은 기본 크기가 10인 기본 벡터를 생성합니다.

Vector()
2. 두 번째 생성 방법은 지정된 크기의 벡터를 생성합니다.

Vector(int size)
3. 세 번째 생성 방법은 지정된 크기의 벡터를 생성하고 증분은 매번 벡터에 추가되는 요소 수를 나타냅니다.

Vector(int size,int incr)
4. 네 번째 생성 방법은 컬렉션 c의 요소를 포함하는 벡터를 생성합니다.

Vector(Collection c)

첫 번째 방법을 사용하는 경우, 후자의 두 가지 방법을 사용하는 경우 시스템이 자동으로 벡터를 관리합니다. 그러면 시스템은 실제로 저장된 데이터의 수가 용량을 초과하는 경우 매개변수initialcapacity에 따라 벡터 객체의 용량(즉, 벡터 객체가 저장할 수 있는 데이터의 크기)을 설정합니다. 시스템은 벡터 개체 저장 용량을 확장합니다.

capacityincrement 매개변수는 각 확장의 확장 값을 제공합니다. 용량 증가가 0이면 매번 두 배로 증가합니다. 이 기능을 사용하면 저장 공간을 최적화할 수 있습니다. Vector 클래스에는 사용자 사용을 용이하게 하기 위해 다양한 메소드가 제공됩니다.

삽입 함수:
(1) public final synced void adddElement(Object obj)
obj를 벡터의 꼬리에 삽입합니다. obj는 모든 유형의 객체일 수 있습니다. 동일한 벡터 객체에 대해 다양한 유형의 객체를 삽입할 수도 있습니다. 다만, 값 대신 객체를 삽입해야 하므로, 값을 삽입할 때 배열을 해당 객체로 변환하는 것에 주의하세요.
예를 들어 정수 1을 삽입하려는 경우 v1.addElement(1)를 직접 호출하지 마세요. 올바른 방법은 다음과 같습니다.

Vector v1 = new Vector(); 
Integer integer1 = new Integer(1); 
v1.addElement(integer1);

(2)public finalsynchronous void setElementAt(Object obj, int index)
index의 객체를 obj로 설정하면 원본 객체를 덮어쓰게 됩니다.
(3)public final synced void insertElement(Object obj,int index)
index가 지정한 위치에 obj를 삽입하면 원본 객체와 후속 객체가 차례로 연기됩니다.

삭제 기능:
(1)public final synced void RemoveElement(Object obj)
벡터에서 obj를 삭제합니다. 여러 개가 있는 경우 벡터 헤드에서 시작하여 찾은 것을 삭제하세요. . obj와 동일한 벡터 멤버입니다.
(2)public final synced void RemoveAllElement();
벡터의 모든 객체를 삭제합니다.
(3)public fianl synced void RemoveElementAt(int index)
인덱스가 가리키는 객체를 삭제합니다

쿼리 검색 기능:
(1)public final int indexOf(Object obj)
벡터 헤드에서 obj 검색을 시작하고, 발생한 첫 번째 obj에 해당하는 첨자를 반환합니다. , -1을 반환합니다.
(2)public final synced 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)
벡터의 끝부터 시작까지 역방향으로 obj를 검색합니다. index로 표현되는 첨자.
(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("\nElements 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

위 내용은 Java 프로그래밍에서 벡터 클래스의 사용법입니다. 학습 노트 내용에 대해서는 PHP 중국어 사이트(www.php.cn)에 더 많은 관련 내용이 있으니 참고해주세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.