### Question:
RandomGeneratorImpl implements RandomGenerator { @Override public String randString(int charCount, int intCount, boolean mustSeartWithAlph) { if (charCount <= 0 || intCount <= 0) { throw new IllegalArgumentException(); } String string = randString(charCount, intCount); if (mustSeartWithAlph) { while (!Character.isAlphabetic(string.charAt(0))) { string = randString(charCount, intCount); } return string; } else { return string; } }  @Override char randLowerCaseChar(); @Override char randUpperCaseChar(); @Override char randChar(); @Override List<Character> randLowerCaseChars(int num); @Override List<Character> randUpperCaseChars(int num); @Override List<Character> randChars(int num); @Override int randInt(int lowBound, int upBound); @Override List<Integer> randIntegers(int lowBount, int upBount, int length); @Override String randString(int charCount, int intCount, boolean mustSeartWithAlph); @Override List<String> randStrings(int size, int alphNum, int digitNum, boolean mustStartWithAlph); @Override double randDouble(double lowBound, double upBound); @Override List<Double> randDoubles(int size, double lowBound, double upBound); @Override boolean randBoolean();  }### Answer:
@Test public void randString() { int iter = 1000; int charNum = 5; int intNum = 5; for (int i = 0; i < iter; i++) { String string = randomGenerator.randString(charNum, intNum, false); assertEquals(charNum + intNum, string.length()); } }