我正在尝试确定"句子"字符串的第一个字符是否为大写字母.程序运行正常,但测试运行会给出数组索引超出范围的错误.我无法理解这个问题.
public class CapitalOrNot
{
public static void Main()
{
string sentence = "Asdafasda";
string UpOrLow = UpperOrLower(sentence);
Console.WriteLine("First char is " + UpOrLow);
}
public static string UpperOrLower(string mj)
{
if (char.IsUpper(mj[0]))
{
mj = "upper";
}
else mj = "lower";
return mj;
}
}
Run Code Online (Sandbox Code Playgroud)
你应该检查字符串是否为空:
public static string UpperOrLower(string mj)
{
if (string.IsNullOrEmpty(mj))
return "bad input";
return char.IsUpper(mj[0]) ? "upper" : "lower";
}
Run Code Online (Sandbox Code Playgroud)