быстрый вопрос относительно моей программы.Моя программа имеет дело с объектами круга, которые отскакивают в окне JFrame.Когда сталкиваются 2 круга, меньший круг расходуется большим, а меньший исчезает.Метод, который делает это, называется:
checkCollsion();
В моей программе я называю его так:
for ( int i = 0; i < blobs.length - 1; i++ )
{
for ( int j = i + 1; j < blobs.length; j++ )
{
blobs[i].checkCollision( blobs[j] );
}
}
Мой единственный вопрос заключается в том, что я непонять, как ссылаться на BLOB-объекты [i].Я получаю, как проверить, сталкивается ли что-то, но я не понимаю, как я должен сравнивать blob [i] с blobs [j], поскольку в моем методе я могу передать только объект blobs [j].
Вот код из моего класса BLOB-объектов:
import java.awt.Color;
import java.util.Random;
@SuppressWarnings("serial")
public class Blob extends BouncingBall {
private int r;
private int g;
private int b;
private Color c;
private BouncingBall bb;
public Blob(int x, int y, int diameter, int windowSize) {
super(x, y, diameter, windowSize);
}
public void setRandomColor(){
Random r1 = new Random();
Random r2 = new Random();
Random r3 = new Random();
r = r1.nextInt(256);
g = r2.nextInt(256);
b = r3.nextInt(256);
c = new Color(r,g,b);
setBackground(c);
}
public void setRandomDirection(){
Random r1 = new Random();
Random r2 = new Random();
int rightOrLeft = r1.nextInt(2);
int upOrDown = r2.nextInt(2);
if (rightOrLeft == 0){
xDelta = LEFT;
}else{
xDelta = RIGHT;
}
if (upOrDown == 0){
yDelta = UP;
}else{
yDelta = DOWN;
}
}
public void checkCollision(Blob blobs){
//setRandomDirection();
//setRandomColor();
}
}