IndexOf-Methode gibt 0 zurück, wenn in C # / Java -1 zurückgegeben werden soll
Ein Freund von mir kam mit diesem seltsamen Verhalten zu mir, das ich nicht erklären kann. Jede Einsicht wäre willkommen.
Im laufenden VS 2005 (C # 2.0) zeigt der folgende Code das Verhalten
int rr = "test".IndexOf("");
Console.WriteLine(rr.ToString());
Der obige Code gibt "0" aus, was deutlich macht, dass er den Wert -1 haben sollte.
Dies passiert auch in Java, wo die folgende Klasse das Verhalten zeigt:
public class Test{
public static void main(String[] args){
System.out.println("Result->"+("test".indexOf("")));
}
}
Im mit Java 1.6.0_17