/** * Create a hash map from another associative container. (constructor shortcut) Default load factor is used. */ public static <KType> ObjectIntHashMap<KType> from( final ObjectIntAssociativeContainer<KType> container) { return new ObjectIntHashMap<KType>(container); }
/** * Create a new hash map with initial capacity and load factor control. * (constructor shortcut). */ public static <KType> ObjectIntHashMap<KType> newInstance(final int initialCapacity, final double loadFactor) { return new ObjectIntHashMap<KType>(initialCapacity, loadFactor); }
/** * Create a new hash map without providing the full generic signature * (constructor shortcut). */ public static <KType> ObjectIntHashMap<KType> newInstance() { return new ObjectIntHashMap<KType>(); }
/** * Creates a hash map from two index-aligned arrays of key-value pairs. Default load factor is used. */ public static <KType> ObjectIntHashMap<KType> from(final KType[] keys, final int[] values) { if (keys.length != values.length) { throw new IllegalArgumentException("Arrays of keys and values must have an identical length."); } final ObjectIntHashMap<KType> map = new ObjectIntHashMap<KType>(keys.length); for (int i = 0; i < keys.length; i++) { map.put(keys[i], values[i]); } return map; }
static ObjectIntHashMap<IRI> initMap() { ObjectIntHashMap<IRI> predicates = new ObjectIntHashMap<>(); AtomicInteger nextId = new AtomicInteger(1); List<OWLRDFVocabulary> ORDERED_URIS = Arrays.asList(RDF_TYPE, RDFS_LABEL, OWL_DEPRECATED, RDFS_COMMENT, RDFS_IS_DEFINED_BY, RDF_FIRST, RDF_REST, OWL_EQUIVALENT_CLASS, OWL_EQUIVALENT_PROPERTY, RDFS_SUBCLASS_OF, RDFS_SUB_PROPERTY_OF, RDFS_DOMAIN, RDFS_RANGE, OWL_DISJOINT_WITH, OWL_ON_PROPERTY, OWL_DATA_RANGE, OWL_ON_CLASS, OWL_ANNOTATED_SOURCE, OWL_ANNOTATED_PROPERTY, OWL_ANNOTATED_TARGET); ORDERED_URIS.forEach(iri -> predicates.put(iri.getIRI(), nextId.getAndIncrement())); Stream.of(OWLRDFVocabulary.values()) .forEach(iri -> predicates.putIfAbsent(iri.getIRI(), nextId.getAndIncrement())); return predicates; }
static ObjectIntHashMap<IRI> initMap() { ObjectIntHashMap<IRI> predicates = new ObjectIntHashMap<>(); AtomicInteger nextId = new AtomicInteger(1); List<OWLRDFVocabulary> ORDERED_URIS = Arrays.asList(RDF_TYPE, RDFS_LABEL, OWL_DEPRECATED, RDFS_COMMENT, RDFS_IS_DEFINED_BY, RDF_FIRST, RDF_REST, OWL_EQUIVALENT_CLASS, OWL_EQUIVALENT_PROPERTY, RDFS_SUBCLASS_OF, RDFS_SUB_PROPERTY_OF, RDFS_DOMAIN, RDFS_RANGE, OWL_DISJOINT_WITH, OWL_ON_PROPERTY, OWL_DATA_RANGE, OWL_ON_CLASS, OWL_ANNOTATED_SOURCE, OWL_ANNOTATED_PROPERTY, OWL_ANNOTATED_TARGET); ORDERED_URIS.forEach(iri -> predicates.put(iri.getIRI(), nextId.getAndIncrement())); Stream.of(OWLRDFVocabulary.values()) .forEach(iri -> predicates.putIfAbsent(iri.getIRI(), nextId.getAndIncrement())); return predicates; }
static ObjectIntHashMap<IRI> initMap() { ObjectIntHashMap<IRI> predicates = new ObjectIntHashMap<>(); AtomicInteger nextId = new AtomicInteger(1); List<OWLRDFVocabulary> ORDERED_URIS = Arrays.asList(RDF_TYPE, RDFS_LABEL, OWL_DEPRECATED, RDFS_COMMENT, RDFS_IS_DEFINED_BY, RDF_FIRST, RDF_REST, OWL_EQUIVALENT_CLASS, OWL_EQUIVALENT_PROPERTY, RDFS_SUBCLASS_OF, RDFS_SUB_PROPERTY_OF, RDFS_DOMAIN, RDFS_RANGE, OWL_DISJOINT_WITH, OWL_ON_PROPERTY, OWL_DATA_RANGE, OWL_ON_CLASS, OWL_ANNOTATED_SOURCE, OWL_ANNOTATED_PROPERTY, OWL_ANNOTATED_TARGET); ORDERED_URIS.forEach(iri -> predicates.put(iri.getIRI(), nextId.getAndIncrement())); Stream.of(OWLRDFVocabulary.values()) .forEach(iri -> predicates.putIfAbsent(iri.getIRI(), nextId.getAndIncrement())); return predicates; }
/** * {@inheritDoc} */ @Override public ObjectIntHashMap<KType> clone() { //clone to size() to prevent some cases of exponential sizes, final ObjectIntHashMap<KType> cloned = new ObjectIntHashMap<KType>(this.size(), this.loadFactor); //We must NOT clone because of independent perturbations seeds cloned.putAll(this); return cloned; }