example - string contains java ejemplo
Java String.indexOf y cadenas vacĂas (5)
Al usar la expresión "", en realidad se está refiriendo a una cadena nula. Una cadena nula es una etiqueta etérea colocada sobre algo que existe solo para mostrar que no hay nada en esta ubicación.
Entonces, al decir "" .indexOf (""), realmente le está preguntando al intérprete:
¿Dónde existe un valor de cadena de null en mi cadena nula?
Devuelve un cero, ya que el nulo está al principio de la cadena nula inexistente.
Agregar algo a la cadena ahora la convertiría en una cadena no nula ... null puede considerarse como la ausencia de todo, incluso de nada.
Tengo curiosidad por saber por qué String.indexOf
devuelve un 0 (en lugar de -1) cuando solicita el índice de una cadena vacía dentro de una cadena.
Los Javadocs solo dicen que este método devuelve el índice en esta cadena de la cadena especificada, -1 si no se encuentra la cadena.
Para mí, este comportamiento parece altamente inesperado, habría esperado un -1. ¿Alguna idea de por qué está ocurriendo este comportamiento inesperado? Al menos, creo que vale la pena una nota en los Javadocs del método ...
System.out.println("FOO".indexOf("")); // outputs 0 wtf!!!
System.out.println("FOO".indexOf("bar")); // outputs -1 as expected
System.out.println("FOO".indexOf("F")); // outputs 0 as expected
System.out.println("".indexOf("")); // outputs 0 as expected, I think
Bueno, si ayuda, puedes pensar en "FOO"
como "" + "FOO"
.
La cuerda vacía está en todas partes, y en ninguna parte. Está dentro de todos los hilos en todo momento, impregnando la esencia de su ser, sin embargo, a medida que lo busca nunca podrá echar un vistazo.
¿Cuántas cadenas vacías puedes caber al comienzo de una cadena? Mu
El estudiante le dijo al maestro,
Maestro, creo que he encontrado la naturaleza de la cadena vacía. La cuerda vacía es como una partícula de polvo, y flota libremente a través de una cuerda mientras el polvo flota libremente a través de la habitación, brillando en un rayo de sol.
El maestro respondió al alumno,
Hmm. Una buena idea. Ahora dime, ¿dónde está el polvo y dónde está la luz del sol?
El maestro golpeó al estudiante con una correa y le indicó que continuara su meditación.
Usando un enfoque algebraico, "" es el elemento neutral de la concatenación de cadenas: x + "" == xy "" + x == x (aunque + no es conmutativa aquí).
Entonces también debe ser:
x.indexOf ( y ) == i and i != -1
<==> x.substring ( 0, i ) + y + x.substring ( i + y.length () ) == x
cuando y = "", esto vale si i == 0 y x.substring (0, 0) == "". No diseñé Java, pero supongo que los matemáticos participaron en él ...
int number_of_empty_strings_in_string_named_text = text.length() + 1
Todos los personajes están separados por una String
vacía. Además, String
vacío está presente al principio y al final.