1. ホーム
  2. c#

[解決済み] なぜ "abcd".StartsWith("") はtrueを返すのでしょうか?

2023-04-04 13:59:09

質問

タイトルが質問全体です。なぜこのようなことが起こるのか、どなたか理由を教えてください。

どのように解決するのですか?

はい - それは空の文字列で始まるからです。実際、空の文字列は論理的にすべての文字のペアの間に発生します。

このようなことを排除するような "starts with" の定義とは何でしょうか?以下は、そうならないような "starts with" の簡単な定義です。

x が y と始まる場合、最初の y.Length の文字がyの文字と一致する場合、xはyで始まります。

別の(同等の)定義。

xがyで始まる場合 x.Substring(0, y.Length).Equals(y) "。