Puede que se de el caso de que encuentres algún problema con tu código o trabajo, recuerda probar siempre en un entorno de testing antes añadir el código al proyecto final.
Solución:
El principal beneficio de "".equals(s)
es que no necesitar los null controlar (equals
comprobará su argumento y devolverá false
si es null), que parece no importarte. si no te preocupa s
siendo null (o lo están buscando de otra manera), definitivamente usaría s.isEmpty()
; muestra exactamente lo que está comprobando, le importa si o no s
está vacío, no si es igual al vacío string
String.equals("")
en realidad es un poco más lento que solo un isEmpty()
llamada. Las cadenas almacenan una variable de conteo inicializada en el constructor, ya que las cadenas son inmutables.
isEmpty()
compara la variable de conteo con 0, mientras que equals verificará el tipo, string longitud, y luego iterar sobre el string para comparar si los tamaños coinciden.
Así que para responder a tu pregunta, isEmpty()
en realidad hará mucho menos! y eso es algo bueno.
Una cosa que quizás desee considerar además de los otros problemas mencionados es que isEmpty()
se introdujo en 1.6, por lo que si lo usa no podrá ejecutar el código en Java 1.5 o inferior.
Valoraciones y reseñas
Nos encantaría que puedieras comunicar esta reseña si te valió la pena.