【发布时间】:2018-05-20 17:45:51
【问题描述】:
在一个算法问题中,描述如下:
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
我的问题1:很难理解TreeNode(int x) { val = x; } 是什么,请解释一下这行的意思。为什么这是必要的。
我的问题2:如何将TreeNode(int x) { val = x; } 放入构造函数的实际代码中?这是我到目前为止尝试的方法,但出现错误:
TreeNode (int val, TreeNode left, TreeNode right, TreeNode x){
this.left = left;
this.right = right;
this.x = { val = x; }
this.val = val;
}
}
错误:this.x = { val = x; } 行的表达式开头非法
【问题讨论】:
-
这是非常标准的 java 东西。在深入研究数据结构/算法之前先学习基础
-
感谢您的快速接受。我也同意:这是基本的东西。通常我只会发表评论,但我需要空间来了解核心观点。
-
@GhostCat 我同意。我很困惑,并认为该行也是字段类型和字段名称。并努力摆脱这种混乱。但很高兴你立即明白我的想法在哪里