我不确定如何将这个问题用于标题,因为我不确定这种做法是否有名称。
是否正在初始化一个对象并同时通过一个可接受的练习,或者我应该总是在一个单独的行上初始化并在下一行传递它?两个例子都很好吗?
这是一种可接受的节省空间的技术吗?
静态修改器可以忽略,因为我刚刚制作了一个新项目并将所有内容保留为静态,以创建一个快速示例。
private static Rectangle2D rect;
public static void main(String[] args) {
exampleMethod1(rect = new Rectangle2D.Double(0, 0, 32, 32));
// OR
rect = new Rectangle2D.Double(0, 0, 32, 32)
exampleMethod1(rect);
}
public static void exampleMethod1(Rectangle2D rect) {
// Do stuff
}
答案 0 :(得分:8)
大多数人认为#2更具可读性,但这通常是个人偏好。
答案 1 :(得分:0)
我必须同意Louis Wasserman对此的看法以及#2更具可读性的原因仅仅是因为在两个单独的行中有两个操作。如果你要应用相同的方法并将所有内容放在同一行中,那么它可能会变得令人讨厌,这个愚蠢的例子:
exampleMethod1(rect = new Rectangle2D.Double(isValid ? 0 : 1, 0,
someNumber + 2, getValue()));