0

17 という整数のユーザー入力を受け取るとします。ここで、17 個の「ノード」クラス オブジェクトを作成したいと考えています。そして、node1、node2、...、node17 のように名前が付けられます。

それを達成する方法は?

4

1 に答える 1

3

しないでください。あなたが求めていることは悪い考えです。

できることは、配列またはコレクションに複数の新しいオブジェクトを追加することです。
名前を気にしない場合ArrayList<Node>は、仕事をします。
名前が必要な場合は、 aHashMap<String, Node>または類似のキーにします。

public List<Node> makeThisManyNodes(int count) {
    List<Node> nodes = new ArrayList<Node>();
    for (int i=0; i<count; i++) {
        nodes.add(new Node());
    }
    return nodes;
}

static final String NODE_BASE_NAME = "node_%d";

public Map<String, Node> makeThisManyNodes(int count) {
    Map<String, Node> nodes = new HashMap<String, Node>();
    String key;
    for (int i=0; i<count; i++) {
        key = String.format(NODE_BASE_NAME, i);
        nodes.put(key, new Node());
    }
    return nodes;
}
于 2014-06-22T14:08:48.377 に答える