C# CompareTo 和 String.Compare

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;

namespace Test1
{
    class Program
    {
        static void Main(string[] args)
        {

            string s1 = "abc";
            string s2 = "abc";
            string s3 = "abcdfg";
            string s4 = "1bcdfg";
            string s5 = "cdfg";
            Console.WriteLine(s1.CompareTo(s2));
            Console.WriteLine(s1.CompareTo(s3));
            Console.WriteLine(s1.CompareTo(s4));
            Console.WriteLine(s1.CompareTo(s5));


            //String.Compare同上,F12可以看到它们继承与String。

            //string s1 = "abc";
            //string s2 = "abc";
            //string s3 = "abcdfg";
            //string s4 = "1bcdfg";
            //string s5 = "cdfg";
            //Console.WriteLine(String.Compare(s1, s2));
            //Console.WriteLine(String.Compare(s1, s3));
            //Console.WriteLine(String.Compare(s1, s4));
            //Console.WriteLine(String.Compare(s1, s5));

            Console.ReadKey();

            /*
            C#中compareTo()的返回值是-1、0、1,
            先比较两者首字符的大小(按ASCII码顺序)。
            一、s1首字符和参数s2的首字符不等:
            1、如果s1首字符的ASCII码大于s2首字符的ASCII码,则输出1;
            2、如果s1首字符的ASCII码小于s2首字符的ASCII码,则输出-1;
            结束。
            二、如果s1首字符和参数s2的首字符相等,则以s1第二个字符和参数s2的第二个字符做比较,以此类推。
            直到比较的字符或被比较的字符中有一方比较完了。
            1、字符串位数多的,输出1;
            2、字符串位数少的,输出-1.
            3、两者所有字符串完全相同,输出0.

            */
        }
    }
}
复制代码

 

posted @   hao_1234_1234  阅读(3543)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示