Analyse.java
package com.roxoft.lib;
import java.util.Arrays;
public final class Analyse {
/** The value to be analysed. */
private final String value;
private Analyse(final String input) {
this.value = input;
}
/**
* @param input the value to be analysed.
* @return a new {@link Analyse} object for running analysis.
*/
public static Analyse string(final String input) {
return new Analyse(input);
}
/**
* @param numberOfRepetitions a number of expected repeitions of a given character.
* @param repeatingCharacter a character expected to repeat a given number of times.
* @return true if given character repeats given number of times, false otherwise.
*/
public boolean startsWith(final int numberOfRepetitions, final char repeatingCharacter) {
if (value.length() < numberOfRepetitions) {
return false;
}
char[] charArray = new char[numberOfRepetitions];
Arrays.fill(charArray, repeatingCharacter);
final String prefix = new String(charArray);
return value.startsWith(prefix);
}
}