gnu.trove

## Class PrimeFinder

- java.lang.Object
- - gnu.trove.PrimeFinder

    public final class PrimeFinder
    extends java.lang.Object

Used to keep hash table capacities prime numbers. Not of interest for users; only for implementors of hashtables.

Choosing prime numbers as hash table capacities is a good idea to keep them working fast, particularly under hash table expansions.

However, JDK 1.2, JGL 3.1 and many other toolkits do nothing to keep capacities prime. This class provides efficient means to choose prime capacities.

Choosing a prime is `O(log 300)` (binary search in a list of 300 ints). Memory requirements: 1 KB static memory.

Version:
  1.0, 09/24/99
Author:
  wolfgang.hoschek@cern.ch

### Field Summary

Fields
`static int` `largestPrime` The largest prime this class can generate; currently equal to `Integer.MAX_VALUE`.

### Constructor Summary

Constructors
Constructor and Description
`PrimeFinder()`

### Method Summary

Methods
`static int` `nextPrime(int desiredCapacity)` Returns a prime number which is `>= desiredCapacity` and very close to `desiredCapacity` (within 11% if `desiredCapacity >= 1000`).

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### largestPrime

    public static final int largestPrime

The largest prime this class can generate; currently equal to `Integer.MAX_VALUE`.

See Also:
  Constant Field Values

### Constructor Detail

#### PrimeFinder

    public PrimeFinder()

### Method Detail

#### nextPrime

    public static final int nextPrime(int desiredCapacity)

Returns a prime number which is `>= desiredCapacity` and very close to `desiredCapacity` (within 11% if `desiredCapacity >= 1000`).

Parameters:
  `desiredCapacity` - the capacity desired by the user.
Returns:
  the capacity which should be used for a hashtable.