C#中字符串大小比较函数--CompareTo与Compare方法(需要完善补充)
2021-02-14 08:19
字符串比较的原理是什么?
原理:
从两个字符串的第一个字符开始逐个进行比较(按字符的ASCII值进行大小比较),直到出现不同的字符或遇到‘\0’为止。
如果全部字符都相同,就认为两字符串相等,返回0;
若出现了不相同的字符,则以第一个不相同的字符比较结果为准,若前者字符大于后者,则返回1,否则返回-1.
注意:
顺序是第一个对象与第二个对象比较!
前>后 return 1;
前=后 return 0;
前
CompareTo方法与Compare方法实现的功能是一样的,只是参数的位置放的不一样而已
eg. s1.CompareTo(s2):
表示字符串s1与s2进行大小比较,
s1 s1=s2 s1.CompareTo(s2)结果为:0 s1>s2 s1.CompareTo(s2)结果为:1 eg.String.Compare(s1,s2)该方法所显现的功能与上面一样,连返回值结果也一样。 表示字符串s1与s2进行大小比较, s1 s1=s2 String.Compare(s1,s2)结果为:0 s1>s2 String.Compare(s1,s2)结果为:1 代码比较如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
string s1 = "a";
string s2 = "b";
Console.WriteLine("s1.CompareTo(s2):" + s1.CompareTo(s2));
string s3 = "foobar";
string s4 = "foofoo";//后面大
Console.WriteLine("s3.CompareTo(s4):" + s3.CompareTo(s4));
string s5 = "foobar";
string s6 = "foofoo";
int Val = String.Compare(s5, s6);
Console.WriteLine("String.Compare(s5,s6):" + Val);
s6 = "fooaar";
Val = String.Compare(s5, s6);
Console.WriteLine("String.Compare(s5,s6):" + Val);
s6 = "foobar";
Val = String.Compare(s5, s6);
Console.WriteLine("String.Compare(s5,s6):" + Val);
Console.ReadKey();
}
}
}
上一篇:WPF(一)
下一篇:Windows 动态链接库编程
文章标题:C#中字符串大小比较函数--CompareTo与Compare方法(需要完善补充)
文章链接:http://soscw.com/index.php/essay/55139.html