我将需要继续在树中创建节点。我想将它们命名为node1
,node2
等node3
。
我知道如何Node
使用基本对象实例化手动(比如我有一个类):
Node node1 = new Node();
我的问题是,如果用户输入总节点数 ( k
),我是否可以自动创建它:node1
, node2
, node3
, ..., nodek
?
感谢您的任何建议;我觉得我在 JAVA 中总是被这个概念所困扰,以及如何找到一个优雅的解决方案......
我将需要继续在树中创建节点。我想将它们命名为node1
,node2
等node3
。
我知道如何Node
使用基本对象实例化手动(比如我有一个类):
Node node1 = new Node();
我的问题是,如果用户输入总节点数 ( k
),我是否可以自动创建它:node1
, node2
, node3
, ..., nodek
?
感谢您的任何建议;我觉得我在 JAVA 中总是被这个概念所困扰,以及如何找到一个优雅的解决方案......
您可以使用集合阅读此集合教程
例如一个List
例子:
int n= someInteger;
List<Node> nodeList = new ArrayList<>(n);
nodeList.add(new Node(0));
nodeList.add(new Node(1));
.
.
.
nodeList.add(new Node(n));
或者,如果您按顺序进行设置,则使用循环
for(int i=0;i<n;i++){
nodeList.add(new Node());
}
变量名只是为程序员提供方便,甚至在您的代码编译后也不会被跟踪。因此,不可能“动态地”命名变量。
但是,您可以Node[]
按照建议使用 a :
Node[] nodes = new Node[k]; // creates an array of length k
for (int i = 0; i < k; i++) // adds a new node at each index
nodes[i] = new Node();
现在,您的“nodeK”将是nodes[k-1]
.