## EDU.oswego.cs.dl.util.concurrent.misc Class Fraction

```java.lang.Object
|
+--EDU.oswego.cs.dl.util.concurrent.misc.Fraction
```
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable, java.io.Serializable

public class Fraction
extends java.lang.Object
implements java.lang.Cloneable, java.lang.Comparable, java.io.Serializable

An immutable class representing fractions as pairs of longs. Fractions are always maintained in reduced form.

Serialized Form

 Constructor Summary `Fraction(Fraction f)`           Create a fraction with the same value as Fraction f ```Fraction(long num, long den)```           Create a Fraction equal in value to num / den

 Method Summary ` double` `asDouble()`           Return the value of the Fraction as a double ` java.lang.Object` `clone()` ` int` `compareTo(long n)`           return a number less, equal, or greater than zero reflecting whether this Fraction is less, equal or greater than n. ` int` `compareTo(java.lang.Object other)`           return a number less, equal, or greater than zero reflecting whether this Fraction is less, equal or greater than the value of Fraction other. ` long` `denominator()`           Return the denominator ` Fraction` `dividedBy(Fraction b)`           return a Fraction representing this Fraction divided by b ` Fraction` `dividedBy(long n)`           return a Fraction representing this Fraction divided by n ` boolean` `equals(long n)` ` boolean` `equals(java.lang.Object other)` `static long` ```gcd(long a, long b)```           Compute the nonnegative greatest common divisor of a and b. ` int` `hashCode()` ` Fraction` `inverse()`           return a Fraction representing 1 / this Fraction ` Fraction` `minus(Fraction b)`           return a Fraction representing this Fraction minus b ` Fraction` `minus(long n)`           return a Fraction representing this Fraction minus n ` Fraction` `negative()`           return a Fraction representing the negated value of this Fraction ` long` `numerator()`           Return the numerator ` Fraction` `plus(Fraction b)`           return a Fraction representing this Fraction plus b ` Fraction` `plus(long n)`           return a Fraction representing this Fraction plus n ` Fraction` `times(Fraction b)`           return a Fraction representing this Fraction times b ` Fraction` `times(long n)`           return a Fraction representing this Fraction times n ` java.lang.String` `toString()`

 Methods inherited from class java.lang.Object `getClass, notify, notifyAll, wait, wait, wait`

 Constructor Detail

### Fraction

```public Fraction(long num,
long den)```
Create a Fraction equal in value to num / den

### Fraction

`public Fraction(Fraction f)`
Create a fraction with the same value as Fraction f

 Method Detail

### numerator

`public final long numerator()`
Return the numerator

### denominator

`public final long denominator()`
Return the denominator

### toString

`public java.lang.String toString()`
Overrides:
`toString` in class `java.lang.Object`

### clone

`public java.lang.Object clone()`
Overrides:
`clone` in class `java.lang.Object`

### asDouble

`public double asDouble()`
Return the value of the Fraction as a double

### gcd

```public static long gcd(long a,
long b)```
Compute the nonnegative greatest common divisor of a and b. (This is needed for normalizing Fractions, but can be useful on its own.)

### negative

`public Fraction negative()`
return a Fraction representing the negated value of this Fraction

### inverse

`public Fraction inverse()`
return a Fraction representing 1 / this Fraction

### plus

`public Fraction plus(Fraction b)`
return a Fraction representing this Fraction plus b

### plus

`public Fraction plus(long n)`
return a Fraction representing this Fraction plus n

### minus

`public Fraction minus(Fraction b)`
return a Fraction representing this Fraction minus b

### minus

`public Fraction minus(long n)`
return a Fraction representing this Fraction minus n

### times

`public Fraction times(Fraction b)`
return a Fraction representing this Fraction times b

### times

`public Fraction times(long n)`
return a Fraction representing this Fraction times n

### dividedBy

`public Fraction dividedBy(Fraction b)`
return a Fraction representing this Fraction divided by b

### dividedBy

`public Fraction dividedBy(long n)`
return a Fraction representing this Fraction divided by n

### compareTo

`public int compareTo(java.lang.Object other)`
return a number less, equal, or greater than zero reflecting whether this Fraction is less, equal or greater than the value of Fraction other.

Specified by:
`compareTo` in interface `java.lang.Comparable`

### compareTo

`public int compareTo(long n)`
return a number less, equal, or greater than zero reflecting whether this Fraction is less, equal or greater than n.

### equals

`public boolean equals(java.lang.Object other)`
Overrides:
`equals` in class `java.lang.Object`

### equals

`public boolean equals(long n)`

### hashCode

`public int hashCode()`
Overrides:
`hashCode` in class `java.lang.Object`