初学C#,不知道下面的code哪出问题了,就是run不出来!题目是把array里的名字按英文格式排列(名+姓),我在main下面作了一个转换的function,可执行的时候总出错,拜托高人给看看!using System;
class MainClass
{
public static void Main ()
{Console.WriteLine("ROSTER");
string[] roster = {"Bush, George Herbert Walker",
"Ma, Yo Yo",
"Davenport, Joyce",
"Limbaugh, Rush",
"Quayle, J. Danforth",
"Winfrey, Oprah",
"Konerko, Paul"}; for (int k=0; k < roster.Length; ++k)
Console.WriteLine(roster[k].Ename);
} public static string Ename (string[] roster)
{
int j=0;
while(j<roster.Length)
{
int len = roster[j].IndexOf(',');
string surname = roster[j].Substring(0,len);
string prenames = roster[j].Substring (len+1);
++j;
return prenames + " " + surname;
}
}
}
class MainClass
{
public static void Main ()
{Console.WriteLine("ROSTER");
string[] roster = {"Bush, George Herbert Walker",
"Ma, Yo Yo",
"Davenport, Joyce",
"Limbaugh, Rush",
"Quayle, J. Danforth",
"Winfrey, Oprah",
"Konerko, Paul"}; for (int k=0; k < roster.Length; ++k)
Console.WriteLine(roster[k].Ename);
} public static string Ename (string[] roster)
{
int j=0;
while(j<roster.Length)
{
int len = roster[j].IndexOf(',');
string surname = roster[j].Substring(0,len);
string prenames = roster[j].Substring (len+1);
++j;
return prenames + " " + surname;
}
}
}
public static string Ename (this string roster)
{
int len = roster.IndexOf(',');
string surname = roster[j].Substring(0,len);
string prenames = roster[j].Substring (len+1);
return prenames + " " + surname;
}然后调用:
for (int k=0; k < roster.Length; ++k)
Console.WriteLine(roster[k].Ename());
}
非常感谢!我把class那里定义成static class 就执行出来了!