我正在编写一个简单的算法,只要满足某个条件,就可以在控制台中写入.这是我的代码:
public static void StringTest()
{
string stringToUse = "Ala BalaB JiBBerish Ala Jibberish Ala BalaB";
int strLength = stringToUse.Length;
int i = 0;
while(i < strLength-4)
{
if (stringToUse[i] == stringToUse[(i + 4)] && stringToUse[(i + 1)] == stringToUse[(i + 3)])
System.Console.WriteLine(stringToUse[i] + stringToUse[(i + 1)] + stringToUse[(i + 2)] + stringToUse[(i + 3)] + stringToUse[(i + 4)]);
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
但相反,文字字符串的输出是数字434.我应该如何格式化输出以获得实际的字母,如果有人可以告诉我为什么我没有得到错误和那些数字呢?
你在一起添加字符 - 这将给你一个整数值.看起来您应该只使用Substring:
Console.WriteLine(stringToUse.Substring(i, 5));
Run Code Online (Sandbox Code Playgroud)
或者你可以格式化字符:
Console.WriteLine("{0}{1}{2}{3}{4}",
stringToUse[i],
stringToUse[i + 1],
stringToUse[i + 2],
stringToUse[i + 3],
stringToUse[i + 4]);
Run Code Online (Sandbox Code Playgroud)
(顺便说一下,请注意删除无关的括号.有时候额外的括号很有用 - 在这里它们只是让人分心.)