Esta inquietud se puede tratar de variadas maneras, por lo tanto te mostramos la resolución más completa para nosotros.
Solución:
String s1 = "";
significa que el vacío String
se asigna a s1
. En este caso, s1.length()
es lo mismo que "".length()
que rendirá 0
como se esperaba.
String s2 = null;
significa que (null
) o “ningún valor en absoluto” se asigna a s2
. Así que este, s2.length()
es lo mismo que null.length()
lo que producirá un NullPointerException
como no puedes llamar a los métodos en null
variables (punteros, más o menos) en Java.
También, un punto, la declaración
String s1;
En realidad tiene el mismo efecto que:
String s1 = null;
Mientras
String s1 = "";
Es, como se ha dicho, otra cosa.
Null
no significa nada. Es solo un literal. Null
es el valor de la variable de referencia. pero vacío string está en blanco. Da el length=0
. Vacío string es un valor en blanco, significa que el string no tiene nada.
No se puede invocar ningún método en un objeto al que se le asigna un NULL
valor. le dará un nullPointerException
. Por eso, s2.length()
está dando una excepción.
Te mostramos reseñas y calificaciones
Finalizando este artículo puedes encontrar las notas de otros gestores de proyectos, tú asimismo tienes el poder dejar el tuyo si te apetece.