为什么我们不能将单个字符分配给一个字符串而可以分配多个字符呢?
Why can't we assign a single character to a string but can assign multiple characters?
static void removeSpaces(ref String arg)
{
String temp = "";
for (int i = 0; i < arg.Length; ++i) {
if (arg[i] != ' ')
{
temp = arg[i]; // gives error
temp += arg[i]; // works fine, no error
}
}
}
在这一行中,您试图分配一个字符,
temp = arg[i];
在这里,您将一个字符附加到一个可以工作的字符串,
temp += arg[i];
要使其正常工作,您需要转换为字符串
temp = arg[i].ToString();
static void removeSpaces(ref String arg)
{
String temp = "";
for (int i = 0; i < arg.Length; ++i) {
if (arg[i] != ' ')
{
temp = arg[i]; // gives error
temp += arg[i]; // works fine, no error
}
}
}
在这一行中,您试图分配一个字符,
temp = arg[i];
在这里,您将一个字符附加到一个可以工作的字符串,
temp += arg[i];
要使其正常工作,您需要转换为字符串
temp = arg[i].ToString();