a coś takiego?
@Test
public void shouldWork() {
// given
String input = "Ahewadssada";
Character letter = 'a';
HashMap<Character, Integer> returnedMap = new HashMap<>();
HashMap<Character, Integer> expectedMap = new HashMap<>();
expectedMap.put('A', 4);
// when
String returned = input.chars().filter(e -> Character.toLowerCase(e) == letter).collect(StringBuilder::new, StringBuilder::appendCodePoint, StringBuilder::append).toString();
returnedMap.put(returned.charAt(0), returned.length());
// then
assertThat(returnedMap).isEqualTo(expectedMap);
}
de facto wszystko sprowadza się do 3 linijek:
HashMap<Character, Integer> returnedMap = new HashMap<>();
String returned = input.chars().filter(e -> Character.toLowerCase(e) == letter).collect(StringBuilder::new, StringBuilder::appendCodePoint, StringBuilder::append).toString();
returnedMap.put(returned.charAt(0), returned.length());