2015-12-27 167 views
-6

第一種方法:如何從另一個函數中獲取函數的結果?

public void Calculate (int a, int b) { 
    int sum =a+b; 
} 

第二種方法:

public int getResult(){ 
    return sum ; 
} 
+1

調用函數並將其存儲在一個變量..? – OscuroAA

+1

'sum'是'計算的局部變量()',你不能在'的getResult()' – Ramanlfc

+0

這是沒有意義的訪問它..或者,也許你想存儲'sum'作爲類的成員變量。 –

回答

3
class xyz { 
    int sum; 
    public void Calculate(int a, int b) { 
     sum = a + b; 
    } 
    public int getResult() { 
     return sum; 
    } 
} 
+0

請格式化,以便答覆可讀,對某人真正​​有幫助。 –

4
1. public int Calculate (int a, int b) { 
int sum = a + b; 
return sum; 
} 

2. 
public int getResult(){ 
return sum = Calculate(15,12); 

} 

或者嘗試這個 1.公衆詮釋計算(INT A,INT B){ INT總和= A + B; 歸還金額; }

2.public int getResult(int a, int b){ 
return sum =Calculate(a,b); 

} 
+0

這將返回總和15 + 12總是27 –

+0

是的,謝謝你糾正我,我要編輯這個。當我發佈答案 –

+0

時,我意識到它也是沒有意義的,如果兩個方法都得到相同的值「a + b」,並且重新分配這兩個方法'calculate'(<-lower case name remember)和'getResult'相同的變量'sum' –

3

你的變量loacalized只計算。您可以撥打calulate它自己或在我oppinon全球化的vaiable

Class calculate { 
    int sum; 
     public void calculate(int a, int b) { 
     sum =a+b; 
     } 

     public int getResult(){ 
     return sum ; 
     } 
} 
+2

你應該在類聲明包裝這個代碼和小寫也改變'calculate'方法名(約定) –

+0

完成@蓋爾這幫助! –

5

這不是完全清楚你想在這裏做什麼,但似乎你有兩個選擇......

您可以存儲在類級別變量的值:

public int Calculate (int a, int b) { 
    return a + b; 
} 

private int sum = 0; 
public void Calculate (int a, int b) { 
    sum = a + b; 
} 
public int getResult() { 
    return sum; 
} 

或者,可能更有效,只是從中計算它的函數返回值

除非有其他特別好的理由,否則通常只需要做最簡單的事就可以。在這種情況下,只是添加數字並返回結果。否則耗時代碼將需要記住調用getResult()之前隨時調用Calculate()和使用對象時的操作順序上會產生依賴性。

相關問題