All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gnu.trove.set.TDoubleSet Maven / Gradle / Ivy

Go to download

The Trove library provides high speed regular and primitive collections for Java.

There is a newer version: 3.0.3
Show newest version
///////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2001, Eric D. Friedman All Rights Reserved.
// Copyright (c) 2009, Rob Eden All Rights Reserved.
// Copyright (c) 2009, Jeff Randall All Rights Reserved.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public
// License along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
///////////////////////////////////////////////////////////////////////////////

package gnu.trove.set;


//////////////////////////////////////////////////
// THIS IS A GENERATED CLASS. DO NOT HAND EDIT! //
//////////////////////////////////////////////////

import gnu.trove.iterator.TDoubleIterator;
import gnu.trove.procedure.TDoubleProcedure;
import gnu.trove.TDoubleCollection;

import java.util.Collection;
import java.util.Set;
import java.io.Serializable;

/**
 * An implementation of the Set interface that uses an
 * open-addressed hash table to store its contents.
 *
 * Created: Sat Nov  3 10:38:17 2001
 *
 * @author Eric D. Friedman, Rob Eden, Jeff Randall
 * @version $Id: _E_Set.template,v 1.1.2.5 2009/09/15 02:38:31 upholderoftruth Exp $
 */

public interface TDoubleSet extends TDoubleCollection {


    /**
     * Returns the value that is used to represent null. The default
     * value is generally zero, but can be changed during construction
     * of the collection.
     *
     * @return the value that represents null
     */
    double getNoEntryValue();


    /**
     * Returns the number of elements in this set (its cardinality).  If this
     * set contains more than Integer.MAX_VALUE elements, returns
     * Integer.MAX_VALUE.
     *
     * @return the number of elements in this set (its cardinality)
     */
    int size();

    
    /**
     * Returns true if this set contains no elements.
     *
     * @return true if this set contains no elements
     */
    boolean isEmpty();


    /**
     * Returns true if this set contains the specified element.
     *
     * @param entry an double value
     * @return true if the set contains the specified element.
     */
    boolean contains( double entry );


    /**
     * Creates an iterator over the values of the set.  The iterator
     * supports element deletion.
     *
     * @return an TDoubleIterator value
     */
    TDoubleIterator iterator();


    /**
     * Returns an array containing all of the elements in this set.
     * If this set makes any guarantees as to what order its elements
     * are returned by its iterator, this method must return the
     * elements in the same order.
     *
     * 

The returned array will be "safe" in that no references to it * are maintained by this set. (In other words, this method must * allocate a new array even if this set is backed by an array). * The caller is thus free to modify the returned array. * *

This method acts as bridge between array-based and collection-based * APIs. * * @return an array containing all the elements in this set */ double[] toArray(); /** * Returns an array containing elements in this set. * *

If this set fits in the specified array with room to spare * (i.e., the array has more elements than this set), the element in * the array immediately following the end of the set is set to * {@link #getNoEntryValue()}. (This is useful in determining * the length of this set only if the caller knows that this * set does not contain any elements representing null.) * *

If the native array is smaller than the set size, * the array will be filled with elements in Iterator order * until it is full and exclude the remainder. * *

If this set makes any guarantees as to what order its elements * are returned by its iterator, this method must return the elements * in the same order. * * @param dest the array into which the elements of this set are to be * stored. * @return an double[] containing all the elements in this set * @throws NullPointerException if the specified array is null */ double[] toArray( double[] dest ); /** * Inserts a value into the set. * * @param entry a double value * @return true if the set was modified by the add operation */ boolean add( double entry ); /** * Removes entry from the set. * * @param entry an double value * @return true if the set was modified by the remove operation. */ boolean remove( double entry ); /** * Tests the set to determine if all of the elements in * collection are present. * * @param collection a Collection value * @return true if all elements were present in the set. */ boolean containsAll( Collection collection ); /** * Tests the set to determine if all of the elements in * TDoubleCollection are present. * * @param collection a TDoubleCollection value * @return true if all elements were present in the set. */ boolean containsAll( TDoubleCollection collection ); /** * Tests the set to determine if all of the elements in * array are present. * * @param array as array of double primitives. * @return true if all elements were present in the set. */ boolean containsAll( double[] array ); /** * Adds all of the elements in collection to the set. * * @param collection a Collection value * @return true if the set was modified by the add all operation. */ boolean addAll( Collection collection ); /** * Adds all of the elements in the TDoubleCollection to the set. * * @param collection a TDoubleCollection value * @return true if the set was modified by the add all operation. */ boolean addAll( TDoubleCollection collection ); /** * Adds all of the elements in the array to the set. * * @param array a array of double primitives. * @return true if the set was modified by the add all operation. */ boolean addAll( double[] array ); /** * Removes any values in the set which are not contained in * collection. * * @param collection a Collection value * @return true if the set was modified by the retain all operation */ boolean retainAll( Collection collection ); /** * Removes any values in the set which are not contained in * TDoubleCollection. * * @param collection a TDoubleCollection value * @return true if the set was modified by the retain all operation */ boolean retainAll( TDoubleCollection collection ); /** * Removes any values in the set which are not contained in * array. * * @param array an array of double primitives. * @return true if the set was modified by the retain all operation */ boolean retainAll( double[] array ); /** * Removes all of the elements in collection from the set. * * @param collection a Collection value * @return true if the set was modified by the remove all operation. */ boolean removeAll( Collection collection ); /** * Removes all of the elements in TDoubleCollection from the set. * * @param collection a TDoubleCollection value * @return true if the set was modified by the remove all operation. */ boolean removeAll( TDoubleCollection collection ); /** * Removes all of the elements in array from the set. * * @param array an array of double primitives. * @return true if the set was modified by the remove all operation. */ public boolean removeAll( double[] array ); /** * Empties the set. */ void clear(); /** * Executes procedure for each element in the set. * * @param procedure a TDoubleProcedure value * @return false if the loop over the set terminated because * the procedure returned false for some value. */ boolean forEach( TDoubleProcedure procedure ); // Comparison and hashing /** * Compares the specified object with this set for equality. Returns * true if the specified object is also a set, the two sets * have the same size, and every member of the specified set is * contained in this set (or equivalently, every member of this set is * contained in the specified set). This definition ensures that the * equals method works properly across different implementations of the * set interface. * * @param o object to be compared for equality with this set * @return true if the specified object is equal to this set */ boolean equals( Object o ); /** * Returns the hash code value for this set. The hash code of a set is * defined to be the sum of the hash codes of the elements in the set. * This ensures that s1.equals(s2) implies that * s1.hashCode()==s2.hashCode() for any two sets s1 * and s2, as required by the general contract of * {@link Object#hashCode}. * * @return the hash code value for this set * @see Object#equals(Object) * @see Set#equals(Object) */ int hashCode(); } // THashSet





© 2015 - 2024 Weber Informatics LLC | Privacy Policy