org.apache.lucene.analysis

## Class CharArraySet

- java.lang.Object
- - java.util.AbstractCollection<E>
  - - java.util.AbstractSet
    - - org.apache.lucene.analysis.CharArraySet

- All Implemented Interfaces:
    java.lang.Iterable, java.util.Collection, java.util.Set

      public class CharArraySet
      extends java.util.AbstractSet

  A simple class that stores Strings as char[]'s in a hash table. Note that this is not a general purpose class. For example, it cannot remove items from the set, nor does it resize its hash table to be smaller, etc. It is designed to be quick to test if a char[] is in the set without the necessity of converting it to a String first.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `class` | `CharArraySet.CharArraySetIterator` The Iterator<String> for this set.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CharArraySet(java.util.Collection c, boolean ignoreCase)` Create set from a Collection of char[] or String
    `CharArraySet(int startSize, boolean ignoreCase)` Create set with enough capacity to hold startSize terms

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `add(char[] text)` Add this char[] directly to the set.
    `boolean` | `add(java.lang.CharSequence text)` Add this CharSequence into the set
    `boolean` | `add(java.lang.Object o)`
    `boolean` | `add(java.lang.String text)` Add this String into the set
    `boolean` | `contains(char[] text, int off, int len)` true if the `len` chars of `text` starting at `off` are in the set
    `boolean` | `contains(java.lang.CharSequence cs)` true if the `CharSequence` is in the set
    `boolean` | `contains(java.lang.Object o)`
    `boolean` | `isEmpty()`
    `java.util.Iterator` | `iterator()`
    `int` | `size()`
    `static CharArraySet` | `unmodifiableSet(CharArraySet set)` Returns an unmodifiable `CharArraySet`.

    - ### Methods inherited from class java.util.AbstractSet

      `equals, hashCode, removeAll`

    - ### Methods inherited from class java.util.AbstractCollection

      `addAll, clear, containsAll, remove, retainAll, toArray, toArray, toString`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.util.Set

      `addAll, clear, containsAll, remove, retainAll, spliterator, toArray, toArray`

    - ### Methods inherited from interface java.util.Collection

      `parallelStream, removeIf, stream`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach`

- - ### Constructor Detail

    - #### CharArraySet

          public CharArraySet(int startSize,
                              boolean ignoreCase)

      Create set with enough capacity to hold startSize terms

    - #### CharArraySet

          public CharArraySet(java.util.Collection c,
                              boolean ignoreCase)

      Create set from a Collection of char[] or String

  - ### Method Detail

    - #### contains

          public boolean contains(char[] text,
                                  int off,
                                  int len)

      true if the `len` chars of `text` starting at `off` are in the set

    - #### contains

          public boolean contains(java.lang.CharSequence cs)

      true if the `CharSequence` is in the set

    - #### add

          public boolean add(java.lang.CharSequence text)

      Add this CharSequence into the set

    - #### add

          public boolean add(java.lang.String text)

      Add this String into the set

    - #### add

          public boolean add(char[] text)

      Add this char[] directly to the set. If ignoreCase is true for this Set, the text array will be directly modified. The user should never modify this text array after calling this method.

    - #### size

          public int size()

      Specified by:
        `size` in interface `java.util.Collection`
      Specified by:
        `size` in interface `java.util.Set`
      Specified by:
        `size` in class `java.util.AbstractCollection`

    - #### isEmpty

          public boolean isEmpty()

      Specified by:
        `isEmpty` in interface `java.util.Collection`
      Specified by:
        `isEmpty` in interface `java.util.Set`
      Overrides:
        `isEmpty` in class `java.util.AbstractCollection`

    - #### contains

          public boolean contains(java.lang.Object o)

      Specified by:
        `contains` in interface `java.util.Collection`
      Specified by:
        `contains` in interface `java.util.Set`
      Overrides:
        `contains` in class `java.util.AbstractCollection`

    - #### add

          public boolean add(java.lang.Object o)

      Specified by:
        `add` in interface `java.util.Collection`
      Specified by:
        `add` in interface `java.util.Set`
      Overrides:
        `add` in class `java.util.AbstractCollection`

    - #### unmodifiableSet

          public static CharArraySet unmodifiableSet(CharArraySet set)

      Returns an unmodifiable `CharArraySet`. This allows to provide unmodifiable views of internal sets for "read-only" use.
      Parameters:
        `set` - a set for which the unmodifiable set is returned.
      Returns:
        an new unmodifiable `CharArraySet`.
      Throws:
        `java.lang.NullPointerException` - if the given set is `null`.

    - #### iterator

          public java.util.Iterator iterator()

      Specified by:
        `iterator` in interface `java.lang.Iterable`
      Specified by:
        `iterator` in interface `java.util.Collection`
      Specified by:
        `iterator` in interface `java.util.Set`
      Specified by:
        `iterator` in class `java.util.AbstractCollection`

Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.