Class CharRange
- All Implemented Interfaces:
Serializable,Iterable<Character>
A contiguous range of characters, optionally negated.
Instances are immutable.
#ThreadSafe#
- Since:
- 1.0
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final CharRange[]Empty array.private final charThe last character, inclusive, in the range.private StringCached toString.private final booleanTrue if the range is everything except the characters specified.private static final longRequired for serialization support.private final charThe first character, inclusive, in the range. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateCharRange(char start, char end, boolean negated) Constructs aCharRangeover a set of characters, optionally negating the range. -
Method Summary
Modifier and TypeMethodDescriptionbooleancontains(char ch) Is the character specified contained in this range.booleanAre all the characters of the passed in range contained in this range.booleanCompares two CharRange objects, returning true if they represent exactly the same range of characters defined in the same way.chargetEnd()Gets the end character for this character range.chargetStart()Gets the start character for this character range.inthashCode()Gets a hashCode compatible with the equals method.static CharRangeis(char ch) Constructs aCharRangeover a single character.static CharRangeisIn(char start, char end) Constructs aCharRangeover a set of characters.booleanIs thisCharRangenegated.static CharRangeisNot(char ch) Constructs a negatedCharRangeover a single character.static CharRangeisNotIn(char start, char end) Constructs a negatedCharRangeover a set of characters.iterator()Returns an iterator which can be used to walk through the characters described by this range.toString()Gets a string representation of the character range.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDRequired for serialization support. Lang version 2.0.- See Also:
-
start
private final char startThe first character, inclusive, in the range. -
end
private final char endThe last character, inclusive, in the range. -
negated
private final boolean negatedTrue if the range is everything except the characters specified. -
iToString
Cached toString. -
EMPTY_ARRAY
Empty array.
-
-
Constructor Details
-
CharRange
private CharRange(char start, char end, boolean negated) Constructs a
CharRangeover 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-eis the same ase-a.- Parameters:
start- first character, inclusive, in this rangeend- last character, inclusive, in this rangenegated- true to express everything except the range
-
-
Method Details
-
is
Constructs a
CharRangeover a single character.- Parameters:
ch- only character in this range- Returns:
- the new CharRange object
- Since:
- 2.5
-
isNot
Constructs a negated
CharRangeover a single character.A negated range includes everything except that defined by the single character.
- Parameters:
ch- only character in this range- Returns:
- the new CharRange object
- Since:
- 2.5
-
isIn
Constructs a
CharRangeover a set of characters.If start and end are in the wrong order, they are reversed. Thus
a-eis the same ase-a.- Parameters:
start- first character, inclusive, in this rangeend- last character, inclusive, in this range- Returns:
- the new CharRange object
- Since:
- 2.5
-
isNotIn
Constructs a negated
CharRangeover a set of characters.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-eis the same ase-a.- Parameters:
start- first character, inclusive, in this rangeend- last character, inclusive, in this range- Returns:
- the new CharRange object
- Since:
- 2.5
-
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
CharRangenegated.A negated range includes everything except that defined by the start and end characters.
- Returns:
trueif negated
-
contains
public boolean contains(char ch) Is the character specified contained in this range.
- Parameters:
ch- the character to check- Returns:
trueif this range contains the input character
-
contains
Are all the characters of the passed in range contained in this range.
- Parameters:
range- the range to check against- Returns:
trueif this range entirely contains the input range- Throws:
IllegalArgumentException- ifnullinput
-
equals
Compares two CharRange objects, returning true if they represent exactly the same range of characters defined in the same way.
-
hashCode
public int hashCode()Gets a hashCode compatible with the equals method.
-
toString
Gets a string representation of the character range.
-
iterator
Returns an iterator which can be used to walk through the characters described by this range.
#NotThreadSafe# the iterator is not thread-safe
-