比较字符串的方法有三个,.Compare/.CompareTo/.Equals;
Compare和CompareTo返回值是int整型{-1,0,1};
// 看Compare方法的方法体,是两个string参数,返回一个整形“public static int Compare( string strA, string strB )”;
// Compare是一个静态方法,C#静态方法是一种特殊的成员方法 它不属于类的某一个具体的实例,而是属于类本身。
// 所以对静态方法不需要首先创建一个类的实例,而是采用"类名.静态"方法的格式 。
// 方法体1:public int CompareTo( object value );方法体2:public int CompareTo( string strB );
// .Compare/.CompareTo;前者是静态方法,后者是非静态方法(使用了static 修饰符的方法为静态方法,反之则是非静态方法。);
// Equals 只能比较两个字符串是否相等,与顺序无关,即使写做“bool iFlag2 = string.Equals( szInput2, szInput1 )”,对iFlag2的结果是没有影响的。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 字符串的比较
{
class Program
{
static void Main( string[] args )
{
while( true ) {
string szInput1 = Console.ReadLine();
string szInput2 = Console.ReadLine();
int nCompareRes = string.Compare( szInput1, szInput2 );
// 看Compare方法的方法体,是两个string参数,返回一个整形“public static int Compare( string strA, string strB )”;
// Compare是一个静态方法,C#静态方法是一种特殊的成员方法 它不属于类的某一个具体的实例,而是属于类本身。
// 所以对静态方法不需要首先创建一个类的实例,而是采用"类名.静态"方法的格式 。
int nCompareToRes = szInput1.CompareTo( szInput2 );
// 方法体1:public int CompareTo( object value );方法体2:public int CompareTo( string strB );
// .Compare/.CompareTo;前者是静态方法,后者是非静态方法(使用了static 修饰符的方法为静态方法,反之则是非静态方法。);
bool iFlag1 = szInput1.Equals(szInput2);
bool iFlag2 = string.Equals( szInput1, szInput2 );
// Equals 只能比较两个字符串是否相等,与顺序无关,即使写做“bool iFlag2 = string.Equals( szInput2, szInput1 )”,对iFlag2的结果是没有影响的。
Console.WriteLine( nCompareRes );
Console.WriteLine( nCompareToRes );
Console.WriteLine( iFlag1 );
Console.WriteLine( iFlag2 );
Console.ReadKey();
}
}
}
}