在您的代码行中,首先您put(val1,val2)
在 main 方法中使用命令插入值。
st.put(key, i);
put(val1,val2)
以下方法的代码行,
public void put(String key, Value val) {
if (val == null) delete(key);
else root = put(root, key, val, 0);
}
根据此代码行,递归 else 部分正在调用另一个put(val1,val2,val3,val4)
方法
put(val1,val2,val3,val4)
以下方法的代码行,
private Node put(Node x, String key, Value val, int d) {
if (x == null) x = new Node();
if (d == key.length()) {
if (x.val == null) n++;
x.val = val;
return x;
}
char c = key.charAt(d);
x.next[c] = put(x.next[c], key, val, d+1);
return x;
}
在这里,当x==null
Node 对象使用new Node();
.