我在Java中創建了一個適用於int和float的Matrix類。爲此,我發現如果我能夠根據用戶傳遞給構造函數的參數將變量mat聲明爲int或float,將會非常方便。如何確定java中構造函數中變量的類型?
我目前的做法是:
package Matrix;
public class Matrix
{
int row,col,mat[][];
float fmat[][];
boolean real=false;
public Matrix(int r,int c)
{
row=r;
col=c;
mat=new int[r][c];
}
public int determinant()
{
//Code to calculate and return Determinant of mat
}
}
我只是想擺脫FMAT和墊子應該到其他的方法,如決定訪問。我知道我可以將int和float存儲在float類型的數組中,但由於某些原因,我不想要這樣。我也可以將類型設置爲Number或Object,但Integer或Float類的方法不適用於這些類型。如果有解決方案,請告訴我。任何替代解決方案也受到歡迎。謝謝。
聽起來像'Matrix'應該是通用的。 – djechlin
像@djechlin說的:使用泛型,你可以在這裏找到一個教程:https://docs.oracle.com/javase/tutorial/java/generics/why.html – Marged
@被大概我仍然紫外線,因爲我不知道如何在Java中添加和相乘泛型(即強制它們是Integer或Float),並且我不確定如何根據函數參數是int還是float,以不同的方式路由代碼。 – djechlin