Enquanto escrevia testes de unidade para uma função booleanque retorna dois Stringsegundos, e eu precisava testar todos os caracteres do alfabeto ( 'a'- 'z') em sequência como um dos parâmetros, um por um, então escrevi isso para fazer isso:
for(char c = 'a'; c <= 'z'; c++)
{
assertTrue(MyClass.MyFunction(testSubject, new String(c));
}
Eu teria pensado que isso era permitido, mas não era, então eu fiz assim:
for(char c = 'a'; c <= 'z'; c++)
{
assertTrue(MyClass.MyFunction(testSubject, ((Character) c).toString());
}
Este é um método confiável para converter um charpara um Stringem Java? É o caminho preferido? Eu não sei muito sobre Java, então gostaria de alguns esclarecimentos sobre isso.
IntStream.rangeClosed('a', 'z')?
IntStream.range(0, 26).mapToObj(i -> Character.toString((char) ('a' + i))).forEach(x -> assertTrue(MyClass.MyFunction(testSubject, x)));