[英]What does it mean to return a value?
我對編程還很陌生,並且對返回值的確切含義感到困惑。 最初,我認為這意味着要輸出返回的值,但是當我在自己的代碼中嘗試執行此操作時,什么也沒發生。
class Class1 {
public static int x = 3;
public static int getX(){
return x;
}
public static void main(String[] args){
Class1.getX();
}
}
這是我的意思的一個例子。 當我運行該程序時,沒有任何顯示。 考慮到這一點,我被認為返回一個值意味着另外的事情。 但是呢
簡單來說,這意味着將值返回給方法的調用者。
因此,在您的示例中,方法getX
將x
的值返回給調用方,從而允許他們訪問它。
class Class1{
static int x = 3;
public static int getX(){
return x;
}
public static void main(String args[]){
int myX = Class1.getX(); // return the value to the caller...
System.out.println(myX); // print the result to the console...
}
}
返回值是方法彼此交談的一種方式
public void method1() {
int value = 5 + method2(5);
System.out.println(value);
}
public int method2(int param) {
return param + 5;
}
這將打印15(將5發送到method2
,該方法向其添加5並將結果返回給method1
,該方法向其添加5並打印結果)。
Java返回值的副本-在這種情況下,它將復制值10
並將其返回給method1
。 如果method2
返回一個Object
則它將返回該對象的引用的副本。 不同的語言對於方法返回具有不同的語義,因此在語言之間進行切換時請務必謹慎。 Java還復制傳遞給方法的參數的值-在這種情況下, method1
復制值5並將其傳遞給method2
。
public void method1() {
int value = 5;
method2(value);
}
public void method2(int param) {
param = param + 5;
}
的value
在method1
是由未受影響的method2
( value
之后仍等於5 method2
執行),因為只有一個副本value
被作為參數發送。
您只是在調用返回整數的方法,但從未使用/打印它。 嘗試在代碼中使用它,以查看是否具有在類中設置的期望值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.