我想创建一个函数,它使随着类型BasicAsteroid(x,y,velocity x,velocity y)值的随机小行星,这是创建随机小行星的构造函数和函数:从HashCode Java获得价值
private double x, y;
private double vx, vy;
public BasicAsteroid(double x, double y, double vx, double vy) {
this.x = x;
this.x = y;
this.vx = vx;
this.vy = vy;
}
public static BasicAsteroid makeRandomAsteroid() {
Random rand = new Random();
BasicAsteroid x = new BasicAsteroid((rand.nextInt()%FRAME_WIDTH), (rand.nextInt()%FRAME_HEIGHT), (rand.nextInt()%MAX_SPEED), (rand.nextInt()%MAX_SPEED));
System.out.println(x);
return x;
}
然而,这是输出,当我创建小行星:
我怎么能输出的值,而不是阶级@哈希码?
谢谢。
覆盖'的toString()'方法 –
我怎么能做到这一点,同时能够使用类型BasicAsteroid对象的值在另一类? – user2975192
另外,你应该传递“rand”变量:makeRandomAsteroid(Random rand)。原因是新的随机对象是用毫秒时间戳创建的。如果这些是按顺序执行的,那么它们很可能具有相同的随机值,因此会有很多重叠的小行星。 –