空のプレフィックスに対して String.StartsWith() が True を返す理由
なぜ C# メソッド string.StartsWith が次の場合に true を返すのかという疑問が生じます。プレフィックスとして空の文字列を使用して呼び出されます。驚くべきことに、この動作は空の文字列で始まる文字列の論理概念と一致しています。
メソッドの定義によれば、最初の接頭辞の文字が文字列の文字列の長さと一致する場合、文字列は接頭辞で始まります。接頭辞。空のプレフィックスの場合、これは、文字列の最初のゼロ文字がゼロ文字と一致する必要があることを意味します。この条件は常に満たされるため、string.StartsWith は空のプレフィックスに対して論理的に true を返します。
「で始まる」の別の定義は次のようになります。
「最初のプレフィックスの場合、文字列はプレフィックスで始まります」文字列の prefix.Length 文字は、結合すると接頭辞と等しくなります。
この定義を使用すると、string.StartsWith も次のようになります。空のプレフィックスは任意の数の文字と結合して空の文字列を生成できるため、空のプレフィックスに対して true を返します。
したがって、空のプレフィックスに対して true を返す string.StartsWith の動作は、意味的にも論理的にも一貫しています。
以上が`String.StartsWith()` が空の文字列に対して True を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。