C#中List的奇怪行为

时间:2015-08-05 16:52:42

标签: c# winforms list foreach

当我需要在List Spacesystem中收集SpaceObjects时,我在winform项目上工作。 所以,我在这里创建了List和一个SpaceObject。

List<SpaceObject> Spacesystem = new List<SpaceObject>();
SpaceObject objekt = new SpaceObject(3, 3, 5, 5, 5, "red");

SpaceObjects的参数是:positionx,positiony,weight,initialspeedx,initialspeedy,color

这就是简而言之,我的按钮&#34; SaveObject&#34;我只写了与之相关的行。

objekt.positionx=positionx;
objekt.positiony=positiony;
objekt.weight=double.Parse(textBox3.Text);
objekt.initialspeedx=double.Parse(textBox1.Text);
objekt.initialspeedy=double.Parse(textBox2.Text);
Spacesystem.Add(objekt);
MessageBox.Show(String.Format("{0} {1} {2} {3} {4} {5}", objekt.positionx, objekt.positiony, objekt.weight, objekt.initialspeedx, objekt.initialspeedy, objekt.color));

所以,我保存了两个对象并在每次保存后保存 我给MessageBox提供了正确的参数。

问题是,当我做的时候

foreach (SpaceObject s in Spacesystem)
MessageBox.Show(String.Format("{0} {1} {2} {3} {4} {5}", s.positionx,s.positiony, s.weight, s.initialspeedx, s.initialspeedy, s.color));

然后,我得到了非常奇怪的结果,两个MessageBox都是一样的。之前我尝试过更多的SpaceObjects,但每个MessageBox中仍有相同的结果。 我不知道,如果你有一些想法,它是如何暗示的,请指教我。 非常感谢你, 马丁

0 个答案:

没有答案