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

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
This commit is contained in:
Bryce McKinlay 2001-03-06 01:04:28 +00:00
parent d97b75bee3
commit 5c409ad3d8
3 changed files with 18 additions and 12 deletions

View 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> 2001-03-01 Per Bothner <per@bothner.com>
Changes merged from Kawa's gnu.math. Changes merged from Kawa's gnu.math.
* java/math/BigInteger.java
* gnu/gcj/math/MPN.java (rshift0): New method handles zero shift count. * gnu/gcj/math/MPN.java (rshift0): New method handles zero shift count.
(rshift(int[],int[],int,int): Removed - not needed. (rshift(int[],int[],int,int): Removed - not needed.
(gcd): Use rshift0 rather than rshift. (gcd): Use rshift0 rather than rshift.

View file

@ -39,7 +39,7 @@ import java.io.IOException;
* Comparator object, or by the natural ordering of the keys. * Comparator object, or by the natural ordering of the keys.
* *
* The algorithms are adopted from Corman, Leiserson, * 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 * 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 * between my code and Sun's (if there is any -- I have never looked
* at Sun's) is a result of this fact.</em> * at Sun's) is a result of this fact.</em>
@ -56,7 +56,6 @@ import java.io.IOException;
* *
* @author Jon Zeppieri * @author Jon Zeppieri
* @author Bryce McKinlay * @author Bryce McKinlay
* @modified $Id: TreeMap.java,v 1.3 2001/02/16 01:49:40 bryce Exp $
*/ */
public class TreeMap extends AbstractMap public class TreeMap extends AbstractMap
implements SortedMap, Cloneable, Serializable implements SortedMap, Cloneable, Serializable
@ -777,9 +776,7 @@ public class TreeMap extends AbstractMap
private void writeObject(ObjectOutputStream out) throws IOException private void writeObject(ObjectOutputStream out) throws IOException
{ {
ObjectOutputStream.PutField fields = out.putFields(); out.defaultWriteObject();
fields.put("comparator", comparator);
out.writeFields();
Node node = firstNode(); Node node = firstNode();
out.writeInt(size); out.writeInt(size);
@ -795,8 +792,7 @@ public class TreeMap extends AbstractMap
private void readObject(ObjectInputStream in) private void readObject(ObjectInputStream in)
throws IOException, ClassNotFoundException throws IOException, ClassNotFoundException
{ {
ObjectInputStream.GetField fields = in.readFields(); in.defaultReadObject();
comparator = (Comparator) fields.get("comparator", null);
int size = in.readInt(); int size = in.readInt();
putFromObjStream(in, size, true); putFromObjStream(in, size, true);
} }

View file

@ -44,8 +44,6 @@ import java.io.ObjectOutputStream;
* TreeSet is a part of the JDK1.2 Collections API. * TreeSet is a part of the JDK1.2 Collections API.
* *
* @author Jon Zeppieri * @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 public class TreeSet extends AbstractSet
@ -269,11 +267,12 @@ public class TreeSet extends AbstractSet
private void writeObject(ObjectOutputStream out) throws IOException private void writeObject(ObjectOutputStream out) throws IOException
{ {
Iterator itr = map.keySet().iterator(); Iterator itr = map.keySet().iterator();
int size = map.size();
out.writeObject(map.comparator()); 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()); out.writeObject(itr.next());
} }