2016-02-28 6 views
0

Я хотел бы попросить что-то простое. Я создал класс, который будет иметь имя. Я хочу создать несколько из этих классов, но их число точно не известно. Каждый класс имеет уникальное имяВключить целое число в строку

То, что я хочу:

У нас есть, например, 3-х классов, то их имена должны быть:

Класс # 1

Класс # 2

Класс # 3.

Я имею в виду что-то вроде этого:

for(int i = 0 ; i < numberofclasses ; i++) 
{ 
    C[i] = new Class("Class # **(i+1)** "); (where i+1 , is the number of class) 
} 

P.S. : принимаются любые предложения для лучшего титула

+1

В чем вопрос? –

+0

Вы хотите динамический класс нагрузки? – user43968

+0

[Вы ищете способ загрузки класса динамически?] (Http://stackoverflow.com/q/4865153/335858) Используйте '' Class # "+ (i + 1)' для имени класса. – dasblinkenlight

ответ

1

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

// Call String.format with three integer codes. 
String result = String.format("One: %1$d Two: %2$d Three: %3$d",10, 20, 30); 
System.out.println(result); 
0

Интерпретация вопроса, поскольку у вас на самом деле есть несколько скомпилированных классов с предсказуемыми именами.

Вам нужно будет использовать какое-либо отражение для загрузки и создания экземпляров классов.

Например:

Class.forName("ClassName").newInstance(); 

Это предполагает ваш класс имеет конструктор без аргументов.

0

Спасибо всем за предложения, ответы, которые работали для меня:

добавив + (мой Int) после строки

System.out.println("Class #"+(i+1)) 

(быстрое решение)

и @Moua Ли ответ:

String result = String.format("One: %1$d Two: %2$d Three: %3$d",10, 20, 30); 
System.out.println(result); 
Смежные вопросы