Создание класса в Java в виде строки - PullRequest
0 голосов
/ 23 марта 2019
  public Spaces(int a,String b,String c){//Constuctor for Dinos.
    String ds= "d" + a;
    Dino ds = new Dino(a,b,c);
  }

Учтите, что я хочу создать классы с именами d1, d2, d3, d4.Как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 23 марта 2019

Это не так, как вы думаете, но вместо этого вы можете использовать простой массив.

Dino[] dinos = new Dino[4];
dino[1]= new Dino(a,b,c); //e.g. of array use

Здесь вы можете найти больше информации об объявлении массива. Пожалуйста, также подумайте, чтобы научиться использовать структуру данных, прежде чем делать что-либо в своем коде (например, вы можете узнать, как использовать массивы ).

0 голосов
/ 23 марта 2019

Рассмотрите возможность добавления переменной экземпляра "name" в Dino

class Dino {

    private String name;

    private int a;
    private String b;
    private String c;

    public Dino(String name, int a, String b, String c;) {
        this.name = name;
        this.a = a;
        this.b = b;
        this.c = c;
    }

    // ...
}

Затем вы можете добавить в список Динозавров:

List<Dino> dinos = new ArrayList<>();

for (int i = 1; i <= 4; i++) {
    dinos.add(new Dino("d" + i, 1, "2", "3"));
}

Затем найдите те, которые вы хотите позже:

Dino d2 = dinos.stream()
    .filter(d -> d.getName().equals("d2"))
    .findFirst()
    .orElseThrow(() -> new RuntimeException("Dino not found"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...