INNER CODE UNIT · Java
TickerCharacterList
robinhood/ticker · ticker/src/main/java/com/robinhood/ticker/TickerCharacterList.java:34
class TickerCharacterList {
private final int numOriginalCharacters;
// The saved character list will always be of the format: EMPTY, list, list
private final char[] characterList;
// A minor optimization so that we can cache the indices of each character.
private final Map<Character, Integer> characterIndicesMap;
TickerCharacterList(String characterList) {
if (characterList.contains(Character.toString(TickerUtils.EMPTY_CHAR))) {
throw new IllegalArgumentException(
"You cannot include TickerUtils.EMPTY_CHAR in the character list.");
}
final char[] charsArray = characterList.toCharArray();
final int length = charsArray.length;
this.numOriginalCharacters = length;
characterIndicesMap = new HashMap<>(length);