我有两个问题:
如果我有以下代码:
private boolean handleCollision(Rectangle_Double test)
{
Rectangle_Double s = test;
s.setLocation(s.X+xVelocity, s.Y);
}
我是否要修改Rectangle_Double中传递的内容?如果是这样,什么是复制并修改Rectangle_Double中传递的最佳方法?
其次,如果我要像这样在python中编写代码:
def handleCollision(collidedLands, testRectangle)
s = testRectangle
s.setLocation(s.X+xVelocity, s.Y)
我是否要修改传递给testRectangle的内容?如果是这样,复制传递的testRectangle并对其进行修改的最佳方法是什么?
谢谢!
最佳答案
我不会讲Java,但要回答Python问题:
是的,您正在修改testRectangle。
如果您不想修改它,请制作一个新的矩形并返回。
像这样,假设您有一个矩形的构造函数:
def handleCollision(collidedLands, testRectangle):
newRectangle = Rectangle(testRectangle.X + xVelocity, testRectangle.Y)
return newRectangle