Mientras escribía las pruebas unitarias para una función boolean
que regresa que toma dos String
s, y necesitaba probar cada carácter del alfabeto ( 'a'
- 'z'
) en secuencia como uno de los parámetros, uno por uno, así que escribí esto para hacer eso:
for(char c = 'a'; c <= 'z'; c++)
{
assertTrue(MyClass.MyFunction(testSubject, new String(c));
}
Pensé que esto era permisible, pero no lo era, así que lo hice así:
for(char c = 'a'; c <= 'z'; c++)
{
assertTrue(MyClass.MyFunction(testSubject, ((Character) c).toString());
}
¿Es este un método confiable para convertir char
a a String
en Java? ¿Es la forma preferida? No sé mucho acerca de Java, por lo que me gustaría una aclaración al respecto.
IntStream.rangeClosed('a', 'z')
?
IntStream.range(0, 26).mapToObj(i -> Character.toString((char) ('a' + i))).forEach(x -> assertTrue(MyClass.MyFunction(testSubject, x)));