TreeSet.java (writeObject): Use a for-loop instead of Iterator.hasNext().
authorBryce McKinlay <bryce@gcc.gnu.org>
Tue, 6 Mar 2001 01:04:28 +0000 (01:04 +0000)
committerBryce McKinlay <bryce@gcc.gnu.org>
Tue, 6 Mar 2001 01:04:28 +0000 (01:04 +0000)
2001-03-06  Bryce McKinlay  <bryce@albatross.co.nz>

* java/util/TreeSet.java (writeObject): Use a for-loop instead of
Iterator.hasNext().

2001-03-05  Jochen Hoenicke  <jochen@gnu.org>

* java/util/TreeMap.java (writeObject): Use defaultWriteObject()
instead of the new JDK1.2 API.  This is simpler and makes
back-porting the classes to JDK1.1 trivial.
(readObject): likewise.

From-SVN: r40252

libjava/ChangeLog
libjava/java/util/TreeMap.java
libjava/java/util/TreeSet.java

index d0b8e6a43be800e0b44b30ba4a1b4ab02d53972d..9de90404a17d9680068fa56c43c582a1547bb01d 100644 (file)
@@ -1,7 +1,18 @@
+2001-03-06  Bryce McKinlay  <bryce@albatross.co.nz>
+
+       * java/util/TreeSet.java (writeObject): Use a for-loop instead of
+       Iterator.hasNext().
+
+2001-03-05  Jochen Hoenicke  <jochen@gnu.org>
+
+       * java/util/TreeMap.java (writeObject): Use defaultWriteObject()
+       instead of the new JDK1.2 API.  This is simpler and makes 
+       back-porting the classes to JDK1.1 trivial.
+       (readObject): likewise.
+       
 2001-03-01  Per Bothner  <per@bothner.com>
 
        Changes merged from Kawa's gnu.math.
-       * java/math/BigInteger.java 
        * gnu/gcj/math/MPN.java (rshift0): New method handles zero shift count.
        (rshift(int[],int[],int,int):  Removed - not needed.
        (gcd):  Use rshift0 rather than rshift.
index 26e3fd6dfbaf18e0192b45c1c5dabed737300f26..59d6079e32ae50c70ade786a60444af52fe80385 100644 (file)
@@ -39,7 +39,7 @@ import java.io.IOException;
  * Comparator object, or by the natural ordering of the keys.
  *
  * The algorithms are adopted from Corman, Leiserson,
- * and Rivest's <i>Introduction to Algorithms.<i>  In other words,
+ * and Rivest's <i>Introduction to Algorithms.</i>  In other words,
  * I cribbed from the same pseudocode as Sun.  <em>Any similarity
  * between my code and Sun's (if there is any -- I have never looked
  * at Sun's) is a result of this fact.</em>
@@ -56,7 +56,6 @@ import java.io.IOException;
  *
  * @author           Jon Zeppieri
  * @author          Bryce McKinlay
- * @modified         $Id: TreeMap.java,v 1.3 2001/02/16 01:49:40 bryce Exp $
  */
 public class TreeMap extends AbstractMap
   implements SortedMap, Cloneable, Serializable
@@ -777,9 +776,7 @@ public class TreeMap extends AbstractMap
 
   private void writeObject(ObjectOutputStream out) throws IOException
   {
-    ObjectOutputStream.PutField fields = out.putFields();
-    fields.put("comparator", comparator);
-    out.writeFields();
+    out.defaultWriteObject();
 
     Node node = firstNode();
     out.writeInt(size);
@@ -795,8 +792,7 @@ public class TreeMap extends AbstractMap
   private void readObject(ObjectInputStream in)
     throws IOException, ClassNotFoundException
   {
-    ObjectInputStream.GetField fields = in.readFields();
-    comparator = (Comparator) fields.get("comparator", null);
+    in.defaultReadObject();
     int size = in.readInt();
     putFromObjStream(in, size, true);
   }
index c6875b8d05a64e1ffc98b64460ed9e5d72f9f059..ba852131a13b1dc728863a8495c61c9e74798a12 100644 (file)
@@ -44,8 +44,6 @@ import java.io.ObjectOutputStream;
  * TreeSet is a part of the JDK1.2 Collections API.
  *
  * @author      Jon Zeppieri
- * @version     $Revision: 1.2 $
- * @modified    $Id: TreeSet.java,v 1.2 2001/02/15 03:59:57 bryce Exp $
  */
 
 public class TreeSet extends AbstractSet
@@ -269,11 +267,12 @@ public class TreeSet extends AbstractSet
   private void writeObject(ObjectOutputStream out) throws IOException
   {
     Iterator itr = map.keySet().iterator();
+    int size = map.size();
 
     out.writeObject(map.comparator());
-    out.writeInt(map.size());
+    out.writeInt(size);
 
-    while (itr.hasNext())
+    for (int i = 0; i < size; i++)
       out.writeObject(itr.next());
   }