startsWith() method in Java returns true on an empty String. How?
<blockquote>
  <p><strong>Possible Duplicate:</strong><br>
  <a href="http://stackoverflow.com/questions/145509/why-does-abcd-startswith-return-true">Why does &ldquo;abcd&rdquo;.StartsWith(&ldquo;&rdquo;) return true?</a>  </p>
</blockquote>



<p>The following simple Java code just uses the <code>startsWith()</code> method.</p>

<pre><code>package startwithdemo;

final public class Main
{    
    public static void main(String[] args)
    {
        System.out.println("My String".startsWith("M"));
        System.out.println("My String".startsWith("My"));
        System.out.println("My String".startsWith(""));
    }
}
</code></pre>

<p>It displays <code>true</code> in all the cases. The first two cases are obvious but in the last case (with an empty String), it's returning <code>true</code>. How?</p>
