2003/12/27 23:42:51
authorcorey <corey@xwt.org>
Fri, 30 Jan 2004 07:43:22 +0000 (07:43 +0000)
committercorey <corey@xwt.org>
Fri, 30 Jan 2004 07:43:22 +0000 (07:43 +0000)
darcs-hash:20040130074322-93698-cbfc1d41075fafd2719ddb939f94d75ff2dac08a.gz

src/org/xwt/util/Vec.java

index 846473b..b20e352 100644 (file)
@@ -14,6 +14,9 @@ import java.io.*;
  *  An unsynchronized Vector implementation; same semantics as
  *  java.util.Vector. Useful for JDK1.1 platforms that don't have
  *  java.util.ArrayList.
+ *
+ *  May contain nulls.
+ *
  *  @see java.util.Vector
  */
 public final class Vec implements Serializable {
@@ -44,7 +47,8 @@ public final class Vec implements Serializable {
     
     public int indexOf(Object o) {
         for(int i=0; i<size; i++)
-            if (store[i] == o) return i;
+            if (o == null ? store[i] == null : store[i].equals(o)) return i;
+        
         return -1;
     }
     
@@ -108,11 +112,8 @@ public final class Vec implements Serializable {
     }
 
     public void removeElement(Object o) {
-        for(int i=0; i<size; i++)
-            if (store[i] == o) {
-                removeElementAt(i);
-                return;
-            }
+        int idx = indexOf(o);
+        if (idx != -1) removeElementAt(idx);
     }
 
     public void insertElementAt(Object o, int at) {