Class CharRange

java.lang.Object
org.apache.commons.lang.CharRange
All Implemented Interfaces:
Serializable

public final class CharRange extends Object implements Serializable

A contiguous range of characters, optionally negated.

Instances are immutable.

#ThreadSafe#

Since:
1.0
Version:
$Id: CharRange.java 1057072 2011-01-10 01:55:57Z niallp $
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    private static class 
    Character Iterator.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final char
    The last character, inclusive, in the range.
    private String
    Cached toString.
    private final boolean
    True if the range is everything except the characters specified.
    private static final long
    Required for serialization support.
    private final char
    The first character, inclusive, in the range.
  • Constructor Summary

    Constructors
    Constructor
    Description
    CharRange(char ch)
    Constructs a CharRange over a single character.
    CharRange(char ch, boolean negated)
    Constructs a CharRange over a single character, optionally negating the range.
    CharRange(char start, char end)
    Constructs a CharRange over a set of characters.
    CharRange(char start, char end, boolean negated)
    Constructs a CharRange over a set of characters, optionally negating the range.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    contains(char ch)
    Is the character specified contained in this range.
    boolean
    Are all the characters of the passed in range contained in this range.
    boolean
    Compares two CharRange objects, returning true if they represent exactly the same range of characters defined in the same way.
    char
    Gets the end character for this character range.
    char
    Gets the start character for this character range.
    int
    Gets a hashCode compatible with the equals method.
    static CharRange
    is(char ch)
    Constructs a CharRange over a single character.
    static CharRange
    isIn(char start, char end)
    Constructs a CharRange over a set of characters.
    boolean
    Is this CharRange negated.
    static CharRange
    isNot(char ch)
    Constructs a negated CharRange over a single character.
    static CharRange
    isNotIn(char start, char end)
    Constructs a negated CharRange over a set of characters.
    Returns an iterator which can be used to walk through the characters described by this range.
    Gets a string representation of the character range.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Required for serialization support. Lang version 2.0.
      See Also:
    • start

      private final char start
      The first character, inclusive, in the range.
    • end

      private final char end
      The last character, inclusive, in the range.
    • negated

      private final boolean negated
      True if the range is everything except the characters specified.
    • iToString

      private transient String iToString
      Cached toString.
  • Constructor Details

    • CharRange

      public CharRange(char ch)

      Constructs a CharRange over a single character.

      Parameters:
      ch - only character in this range
    • CharRange

      public CharRange(char ch, boolean negated)

      Constructs a CharRange over a single character, optionally negating the range.

      A negated range includes everything except the specified char.

      Parameters:
      ch - only character in this range
      negated - true to express everything except the range
    • CharRange

      public CharRange(char start, char end)

      Constructs a CharRange over a set of characters.

      Parameters:
      start - first character, inclusive, in this range
      end - last character, inclusive, in this range
    • CharRange

      public CharRange(char start, char end, boolean negated)

      Constructs a CharRange over a set of characters, optionally negating the range.

      A negated range includes everything except that defined by the start and end characters.

      If start and end are in the wrong order, they are reversed. Thus a-e is the same as e-a.

      Parameters:
      start - first character, inclusive, in this range
      end - last character, inclusive, in this range
      negated - true to express everything except the range
  • Method Details

    • is

      public static CharRange is(char ch)

      Constructs a CharRange over a single character.

      Parameters:
      ch - only character in this range
      Returns:
      the new CharRange object
      Since:
      2.5
      See Also:
    • isNot

      public static CharRange isNot(char ch)

      Constructs a negated CharRange over a single character.

      Parameters:
      ch - only character in this range
      Returns:
      the new CharRange object
      Since:
      2.5
      See Also:
    • isIn

      public static CharRange isIn(char start, char end)

      Constructs a CharRange over a set of characters.

      Parameters:
      start - first character, inclusive, in this range
      end - last character, inclusive, in this range
      Returns:
      the new CharRange object
      Since:
      2.5
      See Also:
    • isNotIn

      public static CharRange isNotIn(char start, char end)

      Constructs a negated CharRange over a set of characters.

      Parameters:
      start - first character, inclusive, in this range
      end - last character, inclusive, in this range
      Returns:
      the new CharRange object
      Since:
      2.5
      See Also:
    • getStart

      public char getStart()

      Gets the start character for this character range.

      Returns:
      the start char (inclusive)
    • getEnd

      public char getEnd()

      Gets the end character for this character range.

      Returns:
      the end char (inclusive)
    • isNegated

      public boolean isNegated()

      Is this CharRange negated.

      A negated range includes everything except that defined by the start and end characters.

      Returns:
      true is negated
    • contains

      public boolean contains(char ch)

      Is the character specified contained in this range.

      Parameters:
      ch - the character to check
      Returns:
      true if this range contains the input character
    • contains

      public boolean contains(CharRange range)

      Are all the characters of the passed in range contained in this range.

      Parameters:
      range - the range to check against
      Returns:
      true if this range entirely contains the input range
      Throws:
      IllegalArgumentException - if null input
    • equals

      public boolean equals(Object obj)

      Compares two CharRange objects, returning true if they represent exactly the same range of characters defined in the same way.

      Overrides:
      equals in class Object
      Parameters:
      obj - the object to compare to
      Returns:
      true if equal
    • hashCode

      public int hashCode()

      Gets a hashCode compatible with the equals method.

      Overrides:
      hashCode in class Object
      Returns:
      a suitable hashCode
    • toString

      public String toString()

      Gets a string representation of the character range.

      Overrides:
      toString in class Object
      Returns:
      string representation of this range
    • iterator

      public Iterator iterator()

      Returns an iterator which can be used to walk through the characters described by this range.

      #NotThreadSafe# the iterator is not threadsafe

      Returns:
      an iterator to the chars represented by this range
      Since:
      2.5