使用Delphi时我真正喜欢的一件事是函数有一个result
变量。 Delphi函数的结束如下:
result:="My Result";
结果变量的数据类型是函数的返回类型。不需要额外的代码。如今,当我用Java编写内容时,它大部分时间都是这样的:
function List<Foo> myFunc(){
List<Foo> myResultVar = new ArrayList<>();
//--now i do some clever stuff--
return myResultVar;
}
如你所见,与Delphi相比,它是一些更多的样板代码,至少当你不得不写一个单行时。是否存在类似于Java中的result
变量的东西,我只是不知道它?
答案 0 :(得分:2)
不,没有那样的。说出在Java中返回什么的唯一方法是使用return
语句。
在您的代码中,为什么不在实际知道要返回的值的位置声明myResultVar
?或者如果你决定在各种不同的分支中,声明变量而不用给它一个初始值:
int result;
if (something) {
// Do some work...
result = foo();
} else {
// Do some other work...
result = bar();
}
// Do some post work...
return result;
如果你不需要在之后做任何事情,那么就马上返回吧...如果你能给出一些代码的具体例子,你真的认为有一个特殊的变量使代码变得更加简单,我们可以尝试用Java编写最干净的有效等效代码。
答案 1 :(得分:1)
不,Java编程语言的语法源自C语言的语法,而Delphi源自Pascal。
没有像Delphi的result
伪变量那样的东西。