作为 Codegym 大学课程一部分的导师授课片段。报名参加完整课程。
“又是你,阿米戈。嗯,你好。”
“迪亚哥,你好像不太高兴见到我?”
“我的印象是,您认为您已经掌握了有关 Java 方法的所有知识。”
“哦,我不……”
“我不这么认为!你连一半都不知道。”
“当然,我不反对...
“好吧,废话不多说了。是时候开始了。我们将从一些简单的事情开始。例如,Java 有一个return语句。它允许您立即终止调用它的方法。下面是语句:
return;
” 很简单:孤词return
后跟一个分号。程序一执行这条语句,当前方法退出,调用方法继续。
“如果在方法return
中被调用main
,那么main
方法将立即结束,整个程序也会随之结束。
例子:
|
该fill 方法用 填充传递的数组的一部分value 。数组中要填充的部分由索引 from 和定义to 。如果 from 小于0 或to 大于数组的长度,则该方法立即终止。 |
“上面的程序有一个fill
方法,用 填充传递给它的数组value
。它不会填充整个数组,只填充索引from
和指定的部分to
。
“在方法的开始fill
,检查传递的值以确保它们有效。如果from
小于 0,或者如果to
大于数组的长度,则该fill
方法立即终止(执行return
语句)。”
“明白了。这就是这句话的全部作用吗?”
“实际上,该return
语句比你想象的更有用。它非常有用,几乎在 Java 中的每个方法中都可以找到它。现在我将带领你了解为什么会这样。
有结果的方法,void
“你可能还记得有语句,有表达式。它们之间有什么区别?”
“如果我没记错的话,表达式与陈述不同,它具有可以在某处使用的含义。”
“正确。而且,在 Java 中,方法也可以有一个值。这是一个非常好的消息:方法不仅能够根据输入参数做一些事情,而且,例如,评估一些事情并返回结果计算。
“对了,你已经遇到过这样的方法:
|
该abs() 方法返回一个双 |
|
该 nextInt() 方法返回一个int |
|
该toUpperCase() 方法返回一个String |
|
该 copyOf() 方法返回一个int[] |
“每个方法只能返回一种预定类型的值。返回类型在声明方法时确定:
public static Type name(parameters)
{
method body
}
其中name
是方法名,parameters
是方法参数列表,type
是方法返回结果的类型。
对于什么都不返回的方法,有一个特殊的占位符类型:void
。
“换句话说,如果我写了我的方法并且不想返回任何东西,那么我将方法的类型声明为void
,仅此而已?”
“是的。而且,我还必须说 Java 有很多这样的方法。
返回结果
“我想出了如何声明一个返回计算/工作结果的方法。我如何从方法本身返回结果?”
“这是一个有效的问题。该return
声明再次帮助我们解决了这个问题。从方法传递结果如下所示:
return value;
"该return
语句将立即终止该方法。并且value
是该方法在退出时应该返回给调用方法的内容。类型必须与方法声明中指定的value
相匹配。下面是一些示例来巩固您所学的内容:Type
示例 1. 该方法计算两个数中的最小值:
|
该方法返回两个数字中的最小值。 如果 a < b 返回 a 否则 返回 b |
示例 2. 该方法复制传递给它的字符串n
时间:
|
该方法有两个参数——一个字符串和该字符串应重复的次数。 为将来的结果创建一个空字符串。 在具有迭代的循环中 times ,将空格和字符串str 添加到 string result 。该字符串 result 作为该方法的结果返回。 |
示例 3:该方法使用三元运算符计算两个数字的最大值:
|
该方法返回两个数字中的最大值。 返回(如果 a > b ,则a ,否则b ) |
“太棒了。方法是我的新超能力!”
“只有你在动手任务中练习得足够多。一遍又一遍。”
GO TO FULL VERSION