-2

抱歉这个奇怪的标题,我很难解释它。我想要的是像这样比较字符串中的字符:

stringa = new string[3];

for (int x = 0; x < stringa.GetLength(0); x++)
{
    Console.WriteLine("String" + (x + 1) + ":");
    stringa[x] = Console.ReadLine();
}

for(int x = 0;x < stringa.GetLength(0);x++)
{
    Console.WriteLine(stringa[x]);
}

我想要的是,现在我有了 stringa[x],我想比较该字符串中的每个字符。有什么方法可以在不使用任何临时变量的情况下做到这一点?

4

2 回答 2

2

您可以通过索引获取字符串中的字符。例如:

string myString = "Test string";
Console.WriteLine(myString[0]);

将写字符'T'

在您的情况下,您可以在第二个循环中放置另一个 for 循环并调用stringa[x][y]以获取第 y 个字符stringa[x],但将其存储stringa[x]在局部变量和索引中会更有效,如下所示:

for(int x = 0;x < stringa.Length(0);x++)
{
    // Store stringa[x] so that we don't have to keep indexing stringa
    string stringx = stringa[x];
    for(int y = 0;y < stringx.Length(0);x++)
    {
        // Do some comparison on stringx[y]
    }
}
于 2012-07-03T02:14:51.300 回答
0

字符串的每个字符都可以通过索引访问,因此下面显示了第一个字符串:

Console.WriteLine(stringa[0]);

此代码显示第一个字符串中的第一个字符:

Console.WriteLine(stringa[0][0]); 

要确定每个单独字符串的长度,出于循环目的,您可以找到特定字符串的长度,例如:

stringa[x].Length
于 2012-07-03T02:16:46.027 回答