Gammapedia is archived. No new edits are allowed and no new accounts can be registered.

Ikepedia is the officially decreed successor to Gammapedia concerning Gammasphere canon.

Infinitypedia is another successor.

Vector: Difference between revisions

From Gammapedia
Jump to navigationJump to search
mNo edit summary
main method
 
Line 16: Line 16:
   
   
  public class VectorTest {
  public class VectorTest {
     Vector crocs = new Vector();
     public static void main(String[] args) {
    crocs.add("Your [[Teh Face|Face]]");
        Vector crocs = new Vector();
    crocs.add(new Integer(5));
        crocs.add("Your [[Teh Face|Face]]");
    crocs.add("[[internets]]");
        crocs.add(new Integer(5));
   
        crocs.add("[[internets]]");
    crocs.remove(1);
       
   
        crocs.remove(1);
    System.out.println(crocs.get(0));  // Your [[Teh Face|Face]]
       
    System.out.println(crocs.get(1));  // internets
        System.out.println(crocs.get(0));  // Your [[Teh Face|Face]]
        System.out.println(crocs.get(1));  // internets
       
    }
  }
  }
==See Also==
==See Also==
* [[Vector Crocs]]
* [[Vector Crocs]]


[[Category: Simple]]
[[Category: Simple]]

Latest revision as of 00:19, 19 September 2006

Vector graphics at their finest.

The Vector class implements a growable array of objects. Like an array, it contains components that can be accessed using an integer index. However, the size of a Vector can grow or shrink as needed to accommodate adding and removing items after the Vector has been created.

Each vector tries to optimize storage management by maintaining a capacity and a capacityIncrement. The capacity is always at least as large as the vector size; it is usually larger because as components are added to the vector, the vector's storage increases in chunks the size of capacityIncrement. An application can increase the capacity of a vector before inserting a large number of components; this reduces the amount of incremental reallocation.

As of the Java 2 platform v1.2, this class has been retrofitted to implement List, so that it becomes a part of Java's collection framework. Unlike the new collection implementations, Vector is synchronized.

The Iterators returned by Vector's iterator and listIterator methods are fail-fast: if the Vector is structurally modified at any time after the Iterator is created, in any way except through the Iterator's own remove or add methods, the Iterator will throw a ConcurrentModificationException. Thus, in the face of concurrent modification, the Iterator fails quickly and cleanly, rather than risking arbitrary, non-deterministic behavior at an undetermined time in the future. The Enumerations returned by Vector's elements method are not fail-fast.

Note that the fail-fast behavior of an iterator cannot be guaranteed as it is, generally speaking, impossible to make any hard guarantees in the presence of unsynchronized concurrent modification. Fail-fast iterators throw ConcurrentModificationException on a best-effort basis. Therefore, it would be wrong to write a program that depended on this exception for its correctness: the fail-fast behavior of iterators should be used only to detect bugs.

This class is a member of the Java Collections Framework.

Example

import java.util.Vector;

public class VectorTest {
   public static void main(String[] args) {
       Vector crocs = new Vector();
       crocs.add("Your Face");
       crocs.add(new Integer(5));
       crocs.add("internets");
       
       crocs.remove(1);
       
       System.out.println(crocs.get(0));  // Your Face
       System.out.println(crocs.get(1));  // internets
        
   }
}

See Also