string.Compare行为

时间:2009-12-09 12:52:54

标签: .net string localization string-comparison

这是怎么回事? (这取自VS2008中的即时窗口)

?string.Compare("-", "+")
-1
?string.Compare("-0", "+0")
1

2 个答案:

答案 0 :(得分:8)

关于String.Compare的评论(强调我的):

  

比较使用当前文化来获取特定于文化的信息,例如套管规则和单个字符的字母顺序。例如,文化可以指定将某些字符组合视为单个字符,或者以特定方式比较大写和小写字符,或者字符的排序顺序取决于前面或后面的字符它

答案 1 :(得分:1)

C#手册写道:

  

比较使用当前   培养以获得特定文化   套管规则等信息   个人的字母顺序   字符。例如,一种文化   可以指明一定的   要处理字符组合   作为单个字符或大写字母   和小写字符进行比较   以某种特定的方式,或者说   字符的排序顺序取决于   在前面的字符或   跟着它。

     

使用word进行比较   排序规则。有关的更多信息   单词,字符串和序数排序,请参阅   System.Globalization.CompareOptions