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

it.unimi.dsi.fastutil.floats.Float2ReferenceSortedMap Maven / Gradle / Ivy

Go to download

fastutil extends the Java Collections Framework by providing type-specific maps, sets, lists, and queues with a small memory footprint and fast access and insertion; it provides also big (64-bit) arrays, sets and lists, sorting algorithms, fast, practical I/O classes for binary and text files, and facilities for memory mapping large files. Note that if you have both this jar and fastutil-core.jar in your dependencies, fastutil-core.jar should be excluded.

There is a newer version: 8.5.15
Show newest version
/* Generic definitions */
/* Assertions (useful to generate conditional code) */
/* Current type and class (and size, if applicable) */
/* Value methods */
/* Interfaces (keys) */
/* Interfaces (values) */
/* Abstract implementations (keys) */
/* Abstract implementations (values) */
/* Static containers (keys) */
/* Static containers (values) */
/* Implementations */
/* Synchronized wrappers */
/* Unmodifiable wrappers */
/* Other wrappers */
/* Methods (keys) */
/* Methods (values) */
/* Methods (keys/values) */
/* Methods that have special names depending on keys (but the special names depend on values) */
/* Equality */
/* Object/Reference-only definitions (keys) */
/* Primitive-type-only definitions (keys) */
/* Object/Reference-only definitions (values) */
/*		 
 * Copyright (C) 2002-2016 Sebastiano Vigna
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License. 
 */
package it.unimi.dsi.fastutil.floats;
import it.unimi.dsi.fastutil.objects.ReferenceCollection;
import it.unimi.dsi.fastutil.objects.ObjectSortedSet;
import it.unimi.dsi.fastutil.objects.ObjectBidirectionalIterator;
import java.util.Map;
import java.util.SortedMap;
/**
 * A type-specific {@link SortedMap}; provides some additional methods that use
 * polymorphism to avoid (un)boxing.
 *
 * 

* Additionally, this interface strengthens {@link #entrySet()}, * {@link #keySet()}, {@link #values()}, {@link #comparator()}, * {@link SortedMap#subMap(Object,Object)}, {@link SortedMap#headMap(Object)} * and {@link SortedMap#tailMap(Object)}. * * @see SortedMap */ public interface Float2ReferenceSortedMap extends Float2ReferenceMap, SortedMap { /** * A sorted entry set providing fast iteration. * *

* In some cases (e.g., hash-based classes) iteration over an entry set * requires the creation of a large number of entry objects. Some * fastutil maps might return {@linkplain #entrySet() entry * set} objects of type FastSortedEntrySet: in this case, * {@link #fastIterator() fastIterator()} will return an iterator that is * guaranteed not to create a large number of objects, possibly * by returning always the same entry (of course, mutated). */ public interface FastSortedEntrySet extends ObjectSortedSet>, FastEntrySet { /** * Returns a fast iterator over this sorted entry set; the iterator * might return always the same entry object, suitably mutated. * * @return a fast iterator over this sorted entry set; the iterator * might return always the same entry object, suitably mutated. */ public ObjectBidirectionalIterator> fastIterator( Float2ReferenceMap.Entry from); } /** * Returns a sorted-set view of the mappings contained in this map. Note * that this specification strengthens the one given in the corresponding * type-specific unsorted map. * * @return a sorted-set view of the mappings contained in this map. * @see Map#entrySet() */ ObjectSortedSet> entrySet(); /** * Returns a type-specific sorted-set view of the mappings contained in this * map. Note that this specification strengthens the one given in the * corresponding type-specific unsorted map. * * @return a type-specific sorted-set view of the mappings contained in this * map. * @see #entrySet() */ ObjectSortedSet> float2ReferenceEntrySet(); /** * Returns a sorted-set view of the keys contained in this map. Note that * this specification strengthens the one given in the corresponding * type-specific unsorted map. * * @return a sorted-set view of the keys contained in this map. * @see Map#keySet() */ FloatSortedSet keySet(); /** * Returns a set view of the values contained in this map. *

* Note that this specification strengthens the one given in * {@link Map#values()}, which was already strengthened in the corresponding * type-specific class, but was weakened by the fact that this interface * extends {@link SortedMap}. * * @return a set view of the values contained in this map. * @see Map#values() */ ReferenceCollection values(); /** * Returns the comparator associated with this sorted set, or null if it * uses its keys' natural ordering. * *

* Note that this specification strengthens the one given in * {@link SortedMap#comparator()}. * * @see SortedMap#comparator() */ FloatComparator comparator(); /** * Returns a view of the portion of this sorted map whose keys range from * fromKey, inclusive, to toKey, exclusive. * *

* Note that this specification strengthens the one given in * {@link SortedMap#subMap(Object,Object)}. * * @see SortedMap#subMap(Object,Object) */ Float2ReferenceSortedMap subMap(Float fromKey, Float toKey); /** * Returns a view of the portion of this sorted map whose keys are strictly * less than toKey. * *

* Note that this specification strengthens the one given in * {@link SortedMap#headMap(Object)}. * * @see SortedMap#headMap(Object) */ Float2ReferenceSortedMap headMap(Float toKey); /** * Returns a view of the portion of this sorted map whose keys are greater * than or equal to fromKey. * *

* Note that this specification strengthens the one given in * {@link SortedMap#tailMap(Object)}. * * @see SortedMap#tailMap(Object) */ Float2ReferenceSortedMap tailMap(Float fromKey); /** * Returns a view of the portion of this sorted map whose keys range from * fromKey, inclusive, to toKey, exclusive. * * @see SortedMap#subMap(Object,Object) */ Float2ReferenceSortedMap subMap(float fromKey, float toKey); /** * Returns a view of the portion of this sorted map whose keys are strictly * less than toKey. * * @see SortedMap#headMap(Object) */ Float2ReferenceSortedMap headMap(float toKey); /** * Returns a view of the portion of this sorted map whose keys are greater * than or equal to fromKey. * * @see SortedMap#tailMap(Object) */ Float2ReferenceSortedMap tailMap(float fromKey); /** * @see SortedMap#firstKey() */ float firstFloatKey(); /** * @see SortedMap#lastKey() */ float lastFloatKey(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy