上次认为两种写法运算结果没错,如下:
"
那么下面的运算结果是什么?
usingSystem;
usingSystem.Collections;
publicclassMyClass
{
publicstaticvoidMain()
{
Console.WriteLine("Test1的结果是:");
Test1();
Console.WriteLine("Test2的结果是:");
Test2();
}
publicstaticvoidTest1()
{
Sample[]sample=newSample[3];
for(inti=0;i<3;i++)
{
sample[i]=newSample();
sample[i].Name=i.ToString();
}
Sample[]tempSample=newSample[3];
for(inti=0;i<3;i++)
{
tempSample[i]=sample[i];
}
sample[0]=tempSample[1];
sample[1]=tempSample[2];
sample[2]=tempSample[0];
for(inti=0;i<3;i++)
{
Console.WriteLine(sample[i].Name);
}
}
publicstaticvoidTest2()
{
Samplesample0=newSample();
Samplesample1=newSample();
Samplesample2=newSample();
sample0.Name="0";
sample1.Name="1";
sample2.Name="2";
SampletempSample0=sample0;
SampletempSample1=sample1;
SampletempSample2=sample2;
sample0=tempSample1;
sample1=tempSample2;
sample2=tempSample0;
Console.WriteLine(sample0.Name);
Console.WriteLine(sample1.Name);
Console.WriteLine(sample2.Name);
RL();
}
privatestaticvoidWL(stringtext,paramsobject[]args)
{
Console.WriteLine(text,args);
}
privatestaticvoidRL()
{
Console.ReadLine();
}
privatestaticvoidBreak()
{
System.Diagnostics.Debugger.Break();
}
}
publicclassSample
{
publicstringName;
}
"
路人丙兄在下面的回复里,指出了问题所在,结果我还误认为是录错了代码。再经楼下兄弟指出,于是用SC看了一下,呵呵,原来是我闹了个大笑话,不好意思了各位