Sono curioso di sapere perchè il String.indexOf
restituisce un 0 (invece di -1) quando si chiede per l'indice di una stringa vuota all'interno di una stringa.Java String.IndexOf e vuoti stringhe
L'Javadocs dire solo questo metodo restituisce l'indice in questa stringa della stringa specificata, -1 se la stringa non viene trovato.
Per me questo comportamento sembra altamente inaspettato, mi sarei aspettato un -1. Qualche idea sul perché questo comportamento inaspettato stia succedendo? Vorrei almeno che questo vale la pena di una nota nella Javadocs del metodo di ...
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
Sì, e qual è la domanda? –
'" foo ".indexOf (" ")' restituisce 0 e '" foo ".substring (0.0)' restituisce '" "'. Sembra coerente, direi. –
possibile duplicato di http://stackoverflow.com/questions/2568625/indexof-method-returns-0-when-it-should-had-return-1-in-c-java –