Một người bạn của tôi đến với tôi với hành vi kỳ lạ này mà tôi không thể giải thích, bất kỳ cái nhìn sâu sắc nào cũng sẽ được đánh giá cao.Phương thức IndexOf trả về 0 khi nó phải trả về -1 trong C#/Java
Im chạy VS 2005 (C# 2.0), các mã sau đây cho thấy hành vi
int rr = "test".IndexOf("");
Console.WriteLine(rr.ToString());
đoạn mã trên, print "0" mà thể hiện rõ nó nên có lợi nhuận -1
này cũng xảy ra trong Java mà lớp sau đây cho thấy các hành vi:
public class Test{
public static void main(String[] args){
System.out.println("Result->"+("test".indexOf("")));
}
}
Im chạy Java 1.6.0_17
Duplicate của http://stackoverflow.com/questions/3872936/why-do-strings-start-with-a-in-java và http://stackoverflow.com/questions/145509/why- không-abcd-startswith-trở-thành sự thật –