간단한 클래스 인 point
을 작성 했으므로 목록에 사용하고 싶습니다.목록의 한 지점 변경
목록에 3 점이 있습니다. 나는 그것을 인쇄 할 경우 :
for (int i = listOfPoint.Count -1; i >=0; i--)
{
Console.WriteLine(listOfPoint[i].toString());
}
출력은 다음과 같습니다
(32, 10)
(33, 10)
(34, 10)
지금, 나는이하고 싶은이 후
for (int i = listOfPoint.Count -1; i > 0; i--)
{
listOfPoint[i] = listOfPoint[i - 1];
}
을 - 인쇄 :
(33, 10)
(34, 10)
(34, 10)
이 후 Y 값을 listOfPoint[0]
으로 변경하고 싶습니다. 그래서 :
listOfPoint[0].Y = 11;
인쇄 다시 목록과 출력은 다음과 같습니다
(33, 10) (34, 10) (34, 11)
그리고 내가 그것을이 같은 방법을 수행 할 수 있습니다
(33, 10)
(34, 11)
(34, 11)
이 왜 출력되지 않습니다?
후 귀하의'Point' 클래스를. 'listOfPoints'를 어떻게 만들 었는지 보여주세요. – Oded
'listOfPoint [i] = listOfPoint [i-1]'은 새로운'Point' 객체를 생성하지 않습니다. 동일한 'Point' 객체를 참조하는 두 개의 요소가 있습니다. – birryree
아마도'Point'를'class'가 아닌'struct'로 만들어야합니다. 또는 적용 가능한 경우 WinForms의 기본 제공 버전을 사용하십시오. – Ryan