创建对被调用方法返回的值的未使用引用是一种好习惯吗?

时间:2013-07-06 09:56:38

标签: java coding-style

我有一位老师认为这是一个好习惯的朋友:

public void enterAnythingToContinue(){
    String junk = in.nextLine();
}

我用Google搜索了这个,但没有找到解释,尽管正如预期的那样,有其他用户使用此方法;主要是老师。

如果你这样做是不是无关紧要,这只是一个清晰度和教学法的问题?

即使您没有明确的答案,也欢迎任何意见。

3 个答案:

答案 0 :(得分:5)

它可能指向Java中方法的矛盾心理。您可以像这样使用此方法

String junk = in.nextLine();

in.nextLine();

也许你的老师会强调“功能”而不是“程序”(无效返回类型)。 如果您指定一个值,则读者知道您正在使用返回值的方法。

在使用现代IDE时,我没有看到任何优势。

答案 1 :(得分:5)

String junk = in.nextLine();

变量名称表明教师知道该值不再被使用,因此只是试图强调该方法确实返回了某些东西。但是,在所有这些情况下,而不是创建一个不必要的引用(并使读者感到困惑)更喜欢评论,以使意图明确。

in.nextLine(); // skipped

答案 2 :(得分:3)

您正在创建对此调用in.nextLine();对象返回的引用。从方法返回后立即收集引用。

只有当你计划用同样的方法对它做一些事情时才有意义。