2012-03-11 2 views
0

Я создал класс в файл с именем Рд, который является объектом, имеющий Струну, как этогомассива заданного пользователя объектов в андроиде

public class PQ { 
    String ec; 
    String com; 
    String ai[3]; 
    String answers[3]; 
} 

Теперь я хочу сделать массив этого объекта длиной 10. Тогда заливка каждого из отдельных элементов, таких как ес ком с данными согласно моему требованию с цикл, как

for(i=0;i<10;i++) 
    pq.ec=25; 

Как это сделать? Я также хочу заполнить ai, ответы. Как получить доступ к этим элементам Я попытался ArrayList, но я могу добавить весь объект, но не может добавлять отдельные элементы Пожалуйста, помогите мне

ответ

3

В классе PQ определяют метод получения и установки манипулировать поля ваших объектов безопасно в соответствии с принцип инкапсуляции.

public String getEc() 
{ 
    return ec; 
} 

public void setEc (String ec) 
{ 
    this.ec = ec; 
} 

public String getCom() 
{ 
    return com; 
} 

public void setCom (String com) 
{ 
    this.com = com; 
} 

public String [] getAi() 
{ 
    return ai; 
} 

public void setAi (String [] ai) 
{ 
    this.ai = ai; 
} 

public String [] getAnswers() 
{ 
    return answers; 
} 

public void setAnswers (String [] answers) 
{ 
    this.answers = answers; 
} 

Чтобы заполнить массив PQ объектов использовать код, подобный этот:

PQ [] objects = new PQ [ 10 ]; 

for (int i = 0; i < objects.length; i++) 
{ 
    objects [ i ].setEc("your ec"); 
    objects [ i ].setCom("your com"); 
    objects [ i ].setAi(new String [] {"fill the string array"}); 
    objects [ i ].setAnswers(new String [] {"fill the string array"}); 
} 

Обратите внимание, что вы можете заполнить каждое поле отдельных объектов с помощью соответствующего сеттера метода и действительного аргумента (с).

+0

@Chinnikrishna Использование методов setter не требуется, так как ваши поля не являются закрытыми, хотя рекомендуется пометить ваши переменные класса private (или, по крайней мере, защищенные) и использовать методы setter для доступа к ним для обеспечения инкапсуляции;) – noob

+0

Might а также рекомендуем добавить кучу явных конструкторов для создания/инициализации 'pq'. –

+0

@MH, предполагая, что OP выполняет тривиальные операции присваивания в конструкторе. – Juvanis

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