- C#, C♯, C#相談室 Part84
857 :デフォルトの名無しさん[sage]:2014/09/28(日) 15:55:14.87 ID:G9FaIjmz - なぜ、IsNullOrEmptyは
var s = "" s.IsNullOrEmpty()のようなオブジェクトベースでなく String.IsNullOrEmpty(s)という関数ベースなのでしょうか?
|
- C#, C♯, C#相談室 Part84
860 :デフォルトの名無しさん[sage]:2014/09/28(日) 16:11:15.02 ID:G9FaIjmz - 拡張メソッドがない昔はともかく今は拡張メソッドで
s.IsNullOrEmpty()でいけるじゃないですか。 なぜ、標準じゃないんです?
|
- C#, C♯, C#相談室 Part84
864 :デフォルトの名無しさん[sage]:2014/09/28(日) 16:38:39.83 ID:G9FaIjmz - >>863
string.isnullorempty(s) s.isnullorempty() 全然時間が違うじゃん 設計的にもオブジェクト指向なんだから 極力関数使いたくないじゃん。
|
- C#, C♯, C#相談室 Part84
865 :デフォルトの名無しさん[sage]:2014/09/28(日) 16:43:21.21 ID:G9FaIjmz - >>863
で、それ書くならこれ書くならこれも書いて置けよって話じゃないですか? public static bool IsNullOrEmpty(this String value) { return (value == null || value.Length == 0); }
|
- C#, C♯, C#相談室 Part84
867 :デフォルトの名無しさん[sage]:2014/09/28(日) 16:59:03.81 ID:G9FaIjmz - ??
いつnullが空文字か?なんて意味不明なコードは提示したんでしょうか?
|
- C#, C♯, C#相談室 Part84
871 :デフォルトの名無しさん[sage]:2014/09/28(日) 17:33:44.81 ID:G9FaIjmz - オブジェクト指向なのに
なぜこのようなメソッドを用意されていないのでしょうか? 実現する仕組みがあるにも関わらず、 用意されていないのはなにか弊害があるためですか? string s = null; s.IsNullOrEmpty()
|
- C#, C♯, C#相談室 Part84
877 :デフォルトの名無しさん[sage]:2014/09/28(日) 18:17:52.09 ID:G9FaIjmz - う〜ん、よくわからん。
s.IsNullOrEmptyがなくて String.IsNullOrEmptyがある。 s.Splitがあって String.Splitがない理由の切り分けは?
|
- C#, C♯, C#相談室 Part84
885 :デフォルトの名無しさん[sage]:2014/09/28(日) 19:17:57.96 ID:G9FaIjmz - s=null
s.IsNullOrEmpty →ヌルか空文字列かをnullに訊いてみる s.Split →null自身の分割をnullに要求する//nullだから当然できない s= "s" s.IsNullOrEmpty →ヌルか空文字列かを"s"に訊いてみる s.Split →"s"自身の分割を"s"に要求する 別に不自然を感じないのですが、 おかしいってことですねありがとうございます。
|
- C#, C♯, C#相談室 Part84
903 :デフォルトの名無しさん[sage]:2014/09/28(日) 23:02:19.13 ID:G9FaIjmz - >>899
s.IsNullEmptyを使って すり替えられても困る場面はあるんですか?
|