在C#中,通常判斷一個字符是否為大寫字母,有些人可能會第一時間想到用正則表達式,那除了正則表達式,是否還有其他方式呢?
答案是肯定的,先一睹為快,具體代碼如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Demo_GC
{
class Program
{
static void Main(string[] args)
{
char c = 'B';
CompareChar(c);
}
/// <summary>
/// 判斷字符是否為大寫字母
/// </summary>
/// <param name="c"></param>
/// <returns></returns>
private static int CompareChar(char c)
{
if (c > 'A' && c < 'Z')
{
return 1;
}
else
{
return 0;
}
}
}
}
沒錯,字符也可以這樣直接比較,這里的字符比較其實是比較字符對應的ACSII碼,調試狀態監控變量c,如下:

我們可以看到字符'B'之前有個66,這個'B'對應的ACSII碼中數值,由此得知,其實C#中字符比較實際上比較的是ACSII碼,具體字符對應的ASCII碼如下圖所示:

