Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
下面的方法调用语句在Java中是什么意思?_Java_String - Fatal编程技术网

下面的方法调用语句在Java中是什么意思?

下面的方法调用语句在Java中是什么意思?,java,string,Java,String,在上面的java代码中,我了解到首先我创建了StringBuilder类型的对象。然后,我使用对象引用str访问类StringBuilder的方法append。在这之后,我失去了轨道。是在append方法中的str.append(“Is”)之后使用append方法,还是在这个类中调用相同的方法?此外,任何人都可以解释上述语句的执行流程。上面哪种追加方法首先执行?追加方法的返回值是StringBuilder对象本身。因此,您可以将调用链接起来,并在字符串中添加更多字符。否则,代码将很难读取,因为您

在上面的java代码中,我了解到首先我创建了StringBuilder类型的对象。然后,我使用对象引用str访问类StringBuilder的方法append。在这之后,我失去了轨道。是在append方法中的str.append(“Is”)之后使用append方法,还是在这个类中调用相同的方法?此外,任何人都可以解释上述语句的执行流程。上面哪种追加方法首先执行?

追加方法的返回值是
StringBuilder
对象本身。因此,您可以将调用链接起来,并在字符串中添加更多字符。否则,代码将很难读取,因为您必须在每行引用StringBuilder对象。

str.append(“is”)
返回StringBuilder本身。您正在对该方法返回的对象调用一个方法。这和做同样的事

    StringBuilder str = new StringBuilder("Today");
    str.append(" is ").append("a").append(" sunny ").append(" day.");

除了在代码中,每个
append()
方法调用都返回相同的对象,这允许将多个方法调用链接到同一个StringBuilder。

请考虑查看(向下滚动到页面末尾)。基本上,对象总是返回自身,因此可以链接许多命令

user.getAddress().getStreet().charAt(0);
这里
str.append(“is”)
返回您再次调用的
StringBuilder
的对象
append(“a”)
methnod

str.append(“is”).append(“a”)
再次返回
StringBuilder
引用,然后再次调用
append(“sunny”)
方法等等


因此,基本上您是在链接方法,就这样。

我建议您在调试器中逐步完成代码。这将向您显示执行流程以及每个点的值。非常感谢。我觉得你的解释很有用。
StringBuilder str = new StringBuilder("Today");
str.append(" is ").append("a").append(" sunny ").append(" day.");