C#比较两个字符串的大小是根据什么比较的
例如inti1=string.Compare(s1,s2,false);//s1=s2时返回0s1<s2返回-1s1>s2返回1是根据长度?那么长度相同的又是...
例如 int i1 = string.Compare(s1,s2,false);//s1=s2时返回0 s1<s2返回-1 s1>s2返回1 是根据长度? 那么长度相同的又是如何判定的?
展开
4个回答
展开全部
Compare就是比大小,它的机理是逐个字符比较,也就是说先比s1[0] == s2[0]? 如果不等,就返回-1或者1。如果相等,往下比,直到某个字符不相等。如果到最后都相等,长度不一样的话显然短的那个string小;如果长度一样,直到结束还相等的话,就返回0.
具体情况及字符的排序请见http://msdn.microsoft.com/zh-cn/library/zkcaxw5y(v=vs.80).aspx
具体情况及字符的排序请见http://msdn.microsoft.com/zh-cn/library/zkcaxw5y(v=vs.80).aspx
展开全部
通过计算每个字符串中相应Char对象的数值来比较两个指定的String对象。
比较字符串是按照字符串中的字符一个个比较的 只要一个字符不相同 那么就停止比较得出结果
而字符的比较则是比较其Unicode值 而非ascii码值 因为ASCII是不可能容纳下全世界这么多种语言这么多字符的
比较字符串是按照字符串中的字符一个个比较的 只要一个字符不相同 那么就停止比较得出结果
而字符的比较则是比较其Unicode值 而非ascii码值 因为ASCII是不可能容纳下全世界这么多种语言这么多字符的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string.compare()是比较两个字符串是否相等的,后面的false参数表示区分大小写
例如string1=aaa string2=aaA,这样string1和string2就不相等
如果参数变成true,两个就相等
例如string1=aaa string2=aaA,这样string1和string2就不相等
如果参数变成true,两个就相等
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询