- All Implemented Interfaces:
BaseSeq<Character>
,Copyable<MSeq<Character>>
,ISeq<Character>
,Seq<Character>
,Serializable
,CharSequence
,Comparable<CharSeq>
,Iterable<Character>
,IntFunction<Character>
,RandomAccess
public final class CharSeq
extends io.jenetics.internal.collection.ArrayISeq<Character>
implements CharSequence, ISeq<Character>, Comparable<CharSeq>, Serializable
This class is used for holding the valid characters of an
CharacterGene
. It is not a character sequence in the
classical sense. The characters of this sequence are sorted and doesn't
contain duplicate values, like a set.
final CharSeq cs1 = new CharSeq("abcdeaafg");
final CharSeq cs2 = new CharSeq("gfedcbabb");
assert(cs1.equals(cs2));
- Since:
- 1.0
- Version:
- 2.0
- See Also:
-
Field Summary
-
Constructor Summary
ConstructorDescriptionCharSeq
(char[] characters) Create a new (distinct) CharSeq from the givencharacters
.CharSeq
(CharSequence characters) Create a new (distinct) CharSeq from the givencharacters
. -
Method Summary
Modifier and TypeMethodDescriptionchar
charAt
(int index) int
boolean
contains
(char c) Test whether this character set contains the given characterc
.boolean
Test whether this character set contains the given characterc
.boolean
Returnstrue
if this sequence contains the specified element.boolean
Compares the specified object with this sequence for equality.static String
expand
(char a, char b) Expands the characters betweena
andb
.static String
expand
(CharSequence pattern) Expands the character range for the givenpattern
.int
hashCode()
Returns the hash code value for this sequence.boolean
isEmpty()
Test whether this character set is empty.int
length()
Return the length of this sequence.static CharSeq
of
(char a, char b) Expands the characters betweena
andb
.static CharSeq
of
(CharSequence pattern) Expands the character range for the givenpattern
.subSequence
(int start, int end) toISeq
(CharSequence chars) Helper method for creating a sequence of characters from the givenCharSequence
.toString()
Methods inherited from class io.jenetics.internal.collection.ArrayISeq
append, copy, map, prepend, subSeq, subSeq
Methods inherited from class io.jenetics.internal.collection.ArraySeq
forAll, forEach, get, indexWhere, lastIndexWhere
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.jenetics.util.BaseSeq
forEach, get, iterator, listIterator, nonEmpty, spliterator, stream
Methods inherited from interface java.lang.CharSequence
chars, codePoints
Methods inherited from interface io.jenetics.util.ISeq
append, append, copy, map, prepend, prepend, subSeq, subSeq
Methods inherited from interface io.jenetics.util.Seq
apply, asISeq, asList, asMSeq, forAll, indexOf, indexOf, indexOf, indexWhere, indexWhere, indexWhere, isSorted, isSorted, lastIndexOf, lastIndexOf, lastIndexOf, lastIndexWhere, lastIndexWhere, lastIndexWhere, parallelStream, size, toArray, toArray, toArray, toString, toString
-
Constructor Details
-
CharSeq
Create a new (distinct) CharSeq from the givencharacters
. The givenCharSequence
is sorted and duplicate values are removed- Parameters:
characters
- the characters.- Throws:
NullPointerException
- if thecharacters
arenull
.- See Also:
-
CharSeq
Create a new (distinct) CharSeq from the givencharacters
. The givenCharSequence
is sorted and duplicate values are removed.- Parameters:
characters
- the characters.- Throws:
NullPointerException
- if thecharacters
arenull
.
-
-
Method Details
-
contains
Description copied from interface:Seq
Returnstrue
if this sequence contains the specified element. -
contains
Test whether this character set contains the given characterc
.- Parameters:
c
- the character to test.- Returns:
true
if this character set contains the given character,false
otherwise.- Throws:
NullPointerException
- if the given characterc
isnull
.
-
contains
Test whether this character set contains the given characterc
.- Parameters:
c
- the character to test.- Returns:
true
if this character set contains the given character,false
otherwise.
-
charAt
- Specified by:
charAt
in interfaceCharSequence
-
length
Description copied from interface:BaseSeq
Return the length of this sequence. Once the sequence is created, the length can't be changed. -
subSequence
- Specified by:
subSequence
in interfaceCharSequence
-
isEmpty
Test whether this character set is empty.- Specified by:
isEmpty
in interfaceBaseSeq<Character>
- Specified by:
isEmpty
in interfaceCharSequence
- Returns:
true
if this character set is empty,false
otherwise.
-
hashCode
Description copied from interface:Seq
Returns the hash code value for this sequence. The hash code is defined as followed:int hashCode = 1; final Iterator<E> it = seq.iterator(); while (it.hasNext()) { final E obj = it.next(); hashCode = 31*hashCode + (obj == null ? 0 : obj.hashCode()); }
-
equals
Description copied from interface:Seq
Compares the specified object with this sequence for equality. Returns true if and only if the specified object is also a sequence, both sequences have the same size, and all corresponding pairs of elements in the two sequences are equal. (Two elements e1 and e2 are equal if (e1==null ? e2==null : e1.equals(e2)).) This definition ensures that the equals method works properly across different implementations of the Seq interface. -
compareTo
- Specified by:
compareTo
in interfaceComparable<CharSeq>
-
toString
- Specified by:
toString
in interfaceCharSequence
- Overrides:
toString
in classio.jenetics.internal.collection.ArraySeq<Character>
-
expand
Expands the character range for the givenpattern
. E.g.a-zA-Z0-1
will return a string containing all upper and lower case characters (from a to z), and all digits form 0 to 9.- Parameters:
pattern
- thepattern
to expand.- Returns:
- the expanded pattern.
- Throws:
PatternSyntaxException
- if the pattern could not be expanded.NullPointerException
- if the pattern isnull
.
-
expand
Expands the characters betweena
andb
.- Parameters:
a
- the start character.b
- the stop character.- Returns:
- the expanded characters.
-
of
Expands the character range for the givenpattern
. E.g.a-zA-Z0-1
will return a string containing all upper and lower case characters (from a to z), and all digits form 0 to 9.- Parameters:
pattern
- thepattern
to expand.- Returns:
- the expanded pattern.
- Throws:
PatternSyntaxException
- if the pattern could not be expanded.NullPointerException
- if the pattern isnull
.- See Also:
-
of
Expands the characters betweena
andb
.- Parameters:
a
- the start character.b
- the stop character.- Returns:
- the expanded characters.
- See Also:
-
toISeq
Helper method for creating a sequence of characters from the givenCharSequence
. The returned sequence will contain all characters in the original order.- Parameters:
chars
- the char sequence to convert.- Returns:
- a sequence which will contain all given chars in the original order.
-
toCharSeq
-