string.Equalsまたはstring.Compareを使用する方法はありますか?2つのnullまたは2つの空の文字列がそれぞれfalseまたは0以外の数値を返す方法はありますか?C#2つの文字列をカスタムルールと比較する
使用事例:
string.Equals(null, null) = false;
string.Equals("", string.empty) = false;
string.Compare(null, null) != 0;
string.Compare("", string.empty) != 0;
あなたは説明できますか?物事が自分自身と同等でない比較操作は、例えばソートで使用される要件を満たしていません。 –
@EricLippert null値と空値の両方が「不明」な値を表しているため、これを実行したいと考えています。私はちょうどもっとエレガントな方法があるかどうかを知りたいと思っていた。If(!String.IsEmptyOrNull(val1)&&!String.IsEmptyOrNull(val2)&& String.Equals(val1、val2)) } – Maderas
たとえば、空の文字列がそれ自身より大きく、2つの空の文字列を含むリストに対してソートを行っているというルールがあるとします。このソートアルゴリズムは、このシナリオでは小さな項目の前に大きな項目が*常に*存在するため、ループ内の位置を永遠に入れ替えることができます。 –