2012-10-23 26 views
0

我想存儲從方法返回的二維數組。沒有最後一個,我失去了所有的價值。存儲從java中的方法返回的數組

public static float[][] hesap(int toplamSuc) 
{  
    float[][] temp; 
    temp = new float[toplamSuc][2]; 
    for (int i = 0; i < toplamSuc; i++) 
    { 
     temp = (GGcoder.koordinat(suc[i][4], toplamSuc)); 
    } 
    return temp; 
} 

這個「temp」數組存儲兩個值。第一個價值是犯罪信息。其次是緯度和lang度。我按照下面的方式完成這項任務,但它不起作用。

float[][] temp = new float[toplamSuc][2]; 
    temp = kokOlusturma.hesap(toplamSuc); 

編輯:功能工作正常,但我不能將數組傳輸到另一個數組。

+1

什麼不起作用? –

+0

我的臨時數組值是相同的。每個值都是最後一個值。它們應該是不同的(經度和緯度) – user1545283

+0

你想'temp [i] =(GGCoder ...)'? –

回答

0

在您for循環:

for (int i = 0; i < toplamSuc; i++) 
{ 
    temp = (GGcoder.koordinat(suc[i][4], toplamSuc)); 
} 

您在每次迭代重新temp。所以你的temp變量只有在for循環的最後迭代中計算出的值。你可能會想:

for (int i = 0; i < toplamSuc; i++) 
{ 
    temp[i] = (GGcoder.koordinat(suc[i][4], toplamSuc)); 
} 

現在你的方法是可能相當於說:

public static float[][] hesap(int toplamSuc) 
{ 
    float[][] temp = (GGcoder.koordinat(suc[toplamSuc-1][4], toplamSuc)); 
    return temp; 
} 
+0

Oh no。我的臨時陣列是雙dimontional。我可以在函數中取值,但不能存儲另一個數組。 – user1545283

+0

@ user1545283編輯爲了向你展示我的意思。你只是返回你的'koordinat'方法返回的最後一次調用,這不是我想要的。 – NominSim