Estoy bastante seguro de que la respuesta es sí, pero solo quiero confirmar que nunca hay una situación en la que una cadena no nula (independientemente de lo que contenga) devuelva algo excepto una cadena válida como primer miembro de la matriz devuelto por split.¿es siempre seguro usar el primer elemento de la matriz devuelta por split?
En otras palabras.
String foo = ""; // or "something" or "a b c" or any valid string at all
String[] bar = foo.split(",")[0];
Tengo entendido que la barra nunca será nula y que la línea de asignación no tiene manera de fallar. Si el delimitador no se encuentra en la cadena, simplemente devuelve foo en su totalidad como el primer elemento de la matriz devuelta.
Es fácil comprobar este tipo de comportamiento simplemente escribiendo un pequeño programa que prueba este caso, y mira lo que obtienes – mfrankli
Lo es. Incluso si no contiene la expresión regular dada, siempre devolverá la cadena inicial. –
@mfrankli, gracias. Eso fue un consejo casi útil. Obviamente puedo escribir un programa de prueba (y tengo) ... Pregunto sobre alguna posible condición atípica que no haya considerado o pensado. –