我有一個ArrayList<float[]>
其中我在浮動數組存儲一個線,即(x0,y0,x1,y1)的笛卡爾值。我每次使用.contains()函數執行一個浮點數組時,它都會返回false,儘管我可以在調試器中看到它存在。 SO似乎在比較內存參考而不是實際值。任何方式來讓他們比較值?浮動[] ArrayList,無法檢查浮動[]是否包含在ArrayList
public static void main (String[] args) {
ArrayList <float[]>drawnLines = new ArrayList<float[]>();
float[] line = new float[4];
line[0] = (float)5;
line[1] = (float)12;
line[2] = (float)55;
line[3] = (float)66;
drawnLines.add(line);
float[] linea = new float[4];
linea[0] = (float)5;
linea[1] = (float)12;
linea[2] = (float)55;
linea[3] = (float)66;
if (drawnLines.contains(linea)) {
System.out.println("contians");
}
else {
System.out.println(" does not contian");
}
}
好嗎?我該如何去在一個類中封裝浮子給我的定義平等嗎? –
現在提供示例。 –
非常感謝!我現在看到Java在做什麼! –