デリミタ文字列と分割するテキストを受け入れるString.Split
のオーバーロードがない有効な理由はありますか?その後、なぜ文字列がありませんか。Split(string)overload?
string input = "This - is - an - example";
string[] splitted = input.Split(" - ");
// results in:
// { "This", "is", "an", "example" }
のように使用することができ
string[] Split(string delimiter)
私は本当に簡単に拡張子メソッドを作成することができることを、知っているが、これが追加されていない理由を正当な理由がなければなりません。
文字列区切り文字を使用して文字列を分割する方法を探しているわけではありませんが、私はむしろそのようなオーバーロードが問題を引き起こす理由を探しています。これは本当に問題が起きるとは思わないので、初心者の方でなぜ簡単なstring
の代わりに実際にstring[]
を区切り文字として渡す必要があるのかを理解するのは難しいです。
私が想像一見単純なメソッドをいくつでも追加することができますが、それはあなたが指摘しているように、拡張メソッドを使って独自のメソッドを追加することができる理由です。 – glosrob
回答からわかるように、この質問に対する回答は得られません。私の推測*は、テスト対象が何らかの形で問題に遭ったユーザビリティスタディと関係があると思われます。おそらく、Char対Stringのオーバーロードを適切に処理できないためです。 .NETフレームワークのデザイナーだけが正確に答えてくれますが、ここには投稿しません。 –
@HansPassant私はこのことについて[Eric Lippert](http://stackoverflow.com/users/88656/eric-lippert)に連絡してくれました。 – GameScripting