2013-12-15 262 views
0

所以基本上我想要做的是能:如何將一個變量從一個類傳遞給另一個類?

class MainFile { 
public static void main(String args[]){ 
class2 TEObject = new class2(); 
int var1 = 1; 
int var2 = 1; 
int var3 = 1; 
int sc = 1; 
TEObject.method1(sc, var1, var2, var3); 
double[][] somearray = class2.out(somearray); 
System.out.println(somearray); 
} 
} 

,這裏是第二類:

public class class2 { 
private double Mult; 
public double method1(int sc, int var1, int var2, int var3) 
{ 
    double[][] somearray = 
      {{1,1,1,1,1,1,1,1,1,1,1,1}, 
      {1,0.5,1,0.5,0.5,1,1,2,2,0.5,1,2}, 
      {1,2,0.5,1,1,0.5,1,1,0.5,1,1,2}, 
      {1,2,1,0.5,0.5,1,1,0.5,2,1,0.5,2}, 
      {1,2,2,2,0.5,1,0.5,1,1,0.5,1,0.5}, 
      {1,1,0.5,1,1,0.5,2,0.5,1,2,2,0.5}, 
      {1,0.5,1,0.5,1,1,0.5,2,0.5,2,2,1}, 
      {1,0.5,2,2,2,2,0.5,0.5,0.5,1,1,0.5}, 
      {1,1,1,0.5,2,2,1,2,0.5,0.5,0.5,1}, 
      {1,1,0.5,1,2,0.5,2,0.5,1,0.5,2,1}, 
      {1,1,2,1,0.5,0.5,0.5,1,2,2,0.5,1}, 
      {1,0.5,0.5,2,1,2,2,1,1,1,0.5,0.5}, 
      }; 
    Mult = somearray[sc][var1]*somearray[sc][var2]*somearray[sc][var3]; 
    return Mult;//This needs to be returned for other methods in class2 
} 
public static double[][] out(double[][] somearray){ 
    return somearray; 
} 
//Some more methods go here 

我這裏的問題是,它要求我把在值,當我嘗試和調用它說該類型不適用於參數的方法。我不能把null放在那裏,否則它只會打印null。

失敗了,我基本上想要一種方法能夠從一個類輸出到我的主類,以便我可以操縱主類中的數組。

編輯:我已經更新了類,所以他們更清楚我想要做什麼。

+0

method1和method2的參數是什麼? – klarki

+0

沒有必要在標題中添加主標籤。 –

回答

0

你要的method2返回值存儲在一個變量在你Main類,如下所示:

double[][] somearray = class2.object.method2(); 

如果你想獲得somearraymethod1這是不會因爲你只能上班用Java方法返回一個對象。唯一的出路將是一個包裝對象,它包含somedoublesomearray。或者,如果您不需要返回somedouble,請改爲選擇somearray

+0

不幸的是,我確實需要返回somedouble,所以爲什麼我首先有一個method2。 – ninjapenguin981

+0

我不知道,你用兩種方法發佈了代碼......我只是在猜測你真正想在這裏做什麼,但可能將'somearray'存儲在'class2'的字段中,並通過一個簡單的getter調用'method1'後將是一個解決方案。 – chk

0

您正在調用method2而沒有參數,但它期望somearray的參數 方法2也有一個返回值,您沒有使用它。退一步來說,您的調用代碼和class2的接口的意圖根本不適合。

+0

這是我的問題。我用什麼作爲參數,如果我把一些沒有定義的數組放在一起,如果我把它置爲null,它只輸出爲null。 – ninjapenguin981

+0

咦?那麼除了拋出異常之外,它還會做什麼?你提供了一個解決方案,不會解決你沒有解釋過的問題,所以我們都只是難住或猜測。 –

相關問題