org._3pq.jgrapht.util

Class ModifiableInteger

Implemented Interfaces:
Comparable

public class ModifiableInteger
extends Number
implements Comparable

The ModifiableInteger class wraps a value of the primitive type int in an object, similarly to java.lang.Integer. An object of type ModifiableInteger contains a single field whose type is int.

Unlike java.lang.Integer, the int value which the ModifiableInteger represents can be modified. It becomes useful when used together with the collection framework. For example, if you want to have a java.util.List of counters. You could use Integer but that would have became wasteful and inefficient if you frequently had to update the counters.

WARNING: Because instances of this class are mutable, great care must be exercised if used as keys of a java.util.Map or as values in a java.util.Set in a manner that affects equals comparisons while the instances are keys in the map (or values in the set). For more see documentation of Map and Set.

Author:
Barak Naveh
Since:
May 27, 2004

Field Summary

int
value
The int value represented by this ModifiableInteger.

Constructor Summary

ModifiableInteger()
Deprecated. not really deprecated, just marked so to avoid mistaken use.
ModifiableInteger(int value)
Constructs a newly allocated ModifiableInteger object that represents the specified int value.

Method Summary

int
compareTo(Object o)
Compares this ModifiableInteger object to another object.
int
compareTo(ModifiableInteger anotherInteger)
Compares two ModifiableInteger objects numerically.
double
doubleValue()
boolean
equals(Object o)
Compares this object to the specified object.
float
floatValue()
int
getValue()
Returns the value of this object, similarly to intValue().
int
hashCode()
Returns a hash code for this ModifiableInteger.
int
intValue()
long
longValue()
void
setValue(int value)
Sets a new value for this modifiable integer.
Integer
toInteger()
Returns an Integer object representing this ModifiableInteger's value.
String
toString()
Returns a String object representing this ModifiableInteger's value.

Field Details

value

public int value
The int value represented by this ModifiableInteger.

Constructor Details

ModifiableInteger

public ModifiableInteger()

Deprecated. not really deprecated, just marked so to avoid mistaken use.

!!! DON'T USE - Use the ModifiableInteger(int) constructor instead !!!

This constructor is for the use of java.beans.XMLDecoder deserialization. The constructor is marked as 'deprecated' to indicate to the programmer against using it by mistake.


ModifiableInteger

public ModifiableInteger(int value)
Constructs a newly allocated ModifiableInteger object that represents the specified int value.
Parameters:
value - the value to be represented by the ModifiableInteger object.

Method Details

compareTo

public int compareTo(Object o)
Compares this ModifiableInteger object to another object. If the object is an ModifiableInteger, this function behaves like compareTo(Integer). Otherwise, it throws a ClassCastException (as ModifiableInteger objects are only comparable to other ModifiableInteger objects).
Parameters:
o - the Object to be compared.
Returns:
the value 0 if the argument is a ModifiableInteger numerically equal to this ModifiableInteger; a value less than 0 if the argument is a ModifiableInteger numerically greater than this ModifiableInteger; and a value greater than 0 if the argument is a ModifiableInteger numerically less than this ModifiableInteger.
See Also:
java.lang.Comparable.compareTo(java.lang.Object)

compareTo

public int compareTo(ModifiableInteger anotherInteger)
Compares two ModifiableInteger objects numerically.
Parameters:
anotherInteger - the ModifiableInteger to be compared.
Returns:
the value 0 if this ModifiableInteger is equal to the argument ModifiableInteger; a value less than 0 if this ModifiableInteger is numerically less than the argument ModifiableInteger; and a value greater than 0 if this ModifiableInteger is numerically greater than the argument ModifiableInteger (signed comparison).

doubleValue

public double doubleValue()
See Also:
Number.doubleValue()

equals

public boolean equals(Object o)
Compares this object to the specified object. The result is true if and only if the argument is not null and is an ModifiableInteger object that contains the same int value as this object.
Parameters:
o - the object to compare with.
Returns:
true if the objects are the same; false otherwise.

floatValue

public float floatValue()
See Also:
Number.floatValue()

getValue

public int getValue()
Returns the value of this object, similarly to intValue(). This getter is NOT redundant. It is used for serialization by java.beans.XMLEncoder.
Returns:
the value.

hashCode

public int hashCode()
Returns a hash code for this ModifiableInteger.
Returns:
a hash code value for this object, equal to the primitive int value represented by this ModifiableInteger object.

intValue

public int intValue()
See Also:
Number.intValue()

longValue

public long longValue()
See Also:
Number.longValue()

setValue

public void setValue(int value)
Sets a new value for this modifiable integer.
Parameters:
value - the new value to set.

toInteger

public Integer toInteger()
Returns an Integer object representing this ModifiableInteger's value.
Returns:
an Integer representation of the value of this object.

toString

public String toString()
Returns a String object representing this ModifiableInteger's value. The value is converted to signed decimal representation and returned as a string, exactly as if the integer value were given as an argument to the java.lang.Integer.toString(int) method.
Returns:
a string representation of the value of this object in base 10.