2013-10-02 2 views
0

Я хочу сделать n экземпляром одного класса и манипулировать его переменными. Например, у меня есть класс A, которые содержат переменные и у меня есть п экземпляра этого класса с Ь в качестве объекта и с как переменным г, как значенияManupulate n экземпляр одного внутреннего класса

A b_1 = new A() 
    A b_2 = new A() 
    A b_n = new A() 

Хочу сделать петлю, что это сделать:

for (int i=1; i<n; i++) { 
     b_n.c =d 
    } 
+3

Используйте 'Map' или массив. Имена переменных не могут быть динамически построены на Java. –

ответ

2

Вы хотите массив здесь. Создание массива с размером n:

A objects = new A[n]; 

перебрать массив и инициализировать каждую ссылку на obect, и установить переменную.

for (int i = 0; i < objects.length; ++i) { 
    objects[i] = new A(); 
    objects[i].setC(b); 
} 

BTW, вы должны создать public поглотитель для поля c, вместо доступа к нему напрямую. И сделайте поле private.

+0

спасибо, но у меня много переменных и объектов, а setC (b) - сеттер? это значит, что я должен сделать n сеттеров для st-преобразования n переменных? – user2811139

+0

@ пользователь2811139. Нет, вам нужно написать только один сеттер в классе 'A'. Я предлагаю вам ознакомиться с базовым учебным пособием по Java из учебников Oracle. –

+0

@ user2811139 Пройдите через это - http://docs.oracle.com/javase/tutorial/java/javaOO/ –

1

Вы должны использовать массив или коллекцию А.

Пример со списком:

List<A> myAs = new ArrayList<A>(); 
myAs.add(new A()); 
... 

for(A a: myAs) { 
a.doSomething() 
} 
+0

спасибо, я попробую – user2811139

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