返回型别
外观
返回型别(return type)也称为返回类型,是程序设计里的词语,会定义子程序或是方法在结束时所送出资料的资料类型[1]。在许多编程语言里(特别是像C语言、C++及Java等静态类型系统的语言),在宣告函式时需要明确指定其返回型别。
以下是Java的例子:
public void setShuma(int n1, int n2) {
Shuma = n1 + n2
}
public int getShuma() {
return Shuma;
}
返回型别为int,因此程式可以依此方式送出一个int型别的值给呼叫它的程式。若函式没有回传值,有许多不同的标示方式,例如在许多编程语言中,会将回传型别设定为{{mono|void}:
public void returnNothing()
从函式中回传值
[编辑]一个函式在结束其所有的指令,执行到return指令,或是出现例外时,都会结束函式,回到呼叫它的程式执行执行。
在函式宣告时,可以指定函式的回传型别。在函式中回传值的方式依编程语言而不同,像Java语言可以用return指令来回传值。
若函式宣告为void,就没有回传值,可以不用加上return指令,但有时也会使用。例如可以用return快速的从流程控制的方块中离开,回到上一层程式。
return;
若针对函式宣告为void,return指令中又加上回传值,编译器会出现错误。
若没有宣告为void的函式,需要有加上传回值的return指令,如下:
return returnValue;
而传回值的型别需要和函式中宣告的一致,例如函式宣告回传boolean型态,就不能传回integer型态。
例如在Rectangle类别中的getArea()方法,可以回传一个整数: syntaxhighlight lang="java">
// A method for computing the area of the rectangle public int getArea() { return width * height; }
</syntaxhighlight>
所回传的整数是由width * height
计算而得的结果。
方法也可以回传引用类型,例如在处理自行车物件的程式中,可能会有一个以下的方法:
public Bicycle seeWhosFastest(Bicycle myBike, Bicycle yourBike,
Environment env) {
Bicycle fastest;
// Code to calculate which bike is
// faster, given each bike's gear
// and cadence and given the
// environment (terrain and wind)
return fastest;
}
参考资料
[编辑]- ^ Kernighan, Brian W.; Ritchie, Dennis M. The C Programming Language 2nd. Prentice Hall. 1988. ISBN 0-13-110362-8.