2016-02-15 3 views
-2

Так в отдельной программе, я объявил объект под названием дракон, как это:Получение примитивной информации объекта в методе Java

public Dragon(int color, int location, boolean breathesFire) { 
    this.color = color; 
    this.location = location; 
    this.breathesFire = breathesFire; 
    } 

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

Так я писал:

public void changeColor(int i) { 
    int j = (int) Math.random() * 7; 
    int k = this.location; 
    boolean o = this.breathesFire; 
    army.set(i, j, k, o); 
    } 

Что предполагают, чтобы изменить цвет «я» м дракона в списке массива (их 6 цветов так Math.random * 7 округляется вниз даст вам случайный один). В любом случае, он не компилируется и имеет различные ошибки, любые советы/решения?

+2

Если ваш код не компилируется, и вам нужна помощь - отобразите полное сообщение об ошибке. –

+1

Вставьте весь необходимый код. Каким объектом является армия, и что делает логика метода? –

+0

Вы должны публиковать ошибки, которые вы получаете. Ваш вопрос непонятен. Попробуйте переформулировать свой вопрос. –

ответ

0

Вы не должны объявлять такой метод в классе Дракона. Объявите его скорее в классе, содержащем объект ArrayList. Первое, что вам нужно сделать, это получить i-й дракон из списка массивов. Тогда вы должны использовать Getters для членов Dragon.

int j = (int) Math.random() * 7; 
    Dragon dragon = yourArrayList.get(i); 
    int k = dragon.getLocation(); 
    boolean o = dragon.isBreathingFire(); 
    army.set(i, j, k, o); 

геттеры (объявленные в классе Dragon) будет

public boolean isBreathingFire() { 
     return breathesFire; 
    } 

    public int getLocation() { 
     return location; 
    } 

Это все, что я могу думать. Для получения дополнительной помощи нам понадобится полное сообщение об ошибке.

Смежные вопросы