Я хотел бы прочитать пример ArrayList с объектами. (Java) - PullRequest
0 голосов
/ 25 сентября 2011

Я создал два класса, и я пытаюсь вызвать конструктор (с аргументом) и метод.Мне будет легко, если я просто использую объект.

Моя цель:

  1. Чтобы вызвать тот же метод с использованием 3 объектов.метод 3 раза.

Моя домашняя работа: я немного погуглил.Я заканчиваю объяснением ArrayList и некоторыми примерами из него.Я не нашел примеров, которые, как мне кажется, мне нужны, т.е. использование ArrayList с объектами (например, моя цитата).

public class DrawGraphics
{
    BouncingBox box;

    /** Initializes this class for drawing. */
    public DrawGraphics()
    {

            box = new BouncingBox(200, 50, Color.green);

            box.setMovementVector(1, 1);
    }
//..................
//................
}

Спасибо за тех, кто пытается помочь

Ответы [ 2 ]

3 голосов
/ 25 сентября 2011

Продолжение вашего примера может дать вам представление о том, для чего могут использоваться списки:

// Let's create an ArrayList that will contain the bouncingboxes
List<BouncingBox> boxList = new ArrayList<BouncingBox>();    

// Let's create 5 of them and add them to the end of the List
for (int ii=0;ii<5;ii++) {
    boxList.add(new BouncingBox(200, 50, Color.green));
}

// Iterate over the List we just created with the enhanced for - the method will
// be called on all objects in the List.
for (BouncingBox box : boxList) {
    box.setMovementVector(1, 1);
}

Это то, что вы искали?

0 голосов
/ 14 января 2013

Я уверен, что это не поможет оригинальному постеру, если они не примут класс, но:

Подробная информация об этом назначении доступна в MIT "opencourseware". Цель задания - создать 3 различных объекта путем изменения предоставленного кода, список массивов не нужен, массив в этом отношении не нужен, вы просто создаете дополнительные поля, добавив аналогичный код

есть:

box = new BouncingBox(200, 50, Color.green);
box.setMovementVector(1, 1);

box2 = new BouncingBox(100, 100, Color.cyan);
box2.setMovementVector(2,-1);

и т.д ...

вторая функция в том же классе тоже должна быть изменена, она будет выглядеть примерно так:

   public void draw(Graphics surface) {
        surface.drawLine(50, 50, 250, 250);
        box.draw(surface);
        box2.draw(surface);
        box3.draw(surface);
    }

обратите внимание, что если вы на самом деле интересуетесь программированием как карьерой или хобби, но не понимаете, чем занимаетесь на уроках, лучше обратиться за помощью. Простое копирование ответов онлайн не спасет вас в реальном мире.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...