字符串的第一个字符可以通过以下操作检索吗?

MyString.ToCharArray[0]

当前回答

只是MyString[0]。这使用了字符串。识字课索引器。

其他回答

这是另一种方法:

string mystr = "hello";
MessageBox.show(mystr.Substring(0, 1));

你可以使用LINQ

char c = mystring.FirstOrDefault()

如果字符串为空,它将等于'\0'。

MyString[0]和MyString.ToCharArray()[0]之间的区别是前者将字符串视为只读数组,而ToCharArray()创建一个新数组。前者在几乎任何情况下都更快(也更简单),但如果您有一个需要接受数组的方法,或者如果您想更改数组,则可能需要ToCharArray。

如果字符串不是非空或非空的,你可以这样做:

string.IsNullOrEmpty(MyString) ? (char?)null : MyString[0]

它返回一个char?null或字符串中的第一个字符,视情况而定。

也许这个会有帮助。我使用txtModel_Leave事件,然后创建方法来检测主文本框中的第一个字符。

private void txtMain_Leave(object sender, EventArgs e)
{
    detectFirstChar();
}

private void detectFirstChar() 
{
    string mystr = txtModel.Text;

    if (String.IsNullOrEmpty(txtModel.Text))
    {
        txtAwalan.Text = "";
    }
    else if (mystr.Substring(0, 1) == "F")
    {
        txtKategori.Text = "Finishing";               
    }
    else if((mystr.Substring(0, 1) == "H"))
    {
        txtKategori.Text = "Half";
    }
    else
    {
        txtKategori.Text = "NONE";
    }
}

MyString。删除(1、2);同样适用