看板 java 關於我們 聯絡資訊
安安 請問在java中有沒有0不等於0的情況 我在做矩陣運算後 兩筆不同資料所產生的兩個單位矩陣3X3 其中一個單位矩陣(1,0)這個點用判斷式<IF((1,0)==0)過> 判斷竟然不為0 但是另外一個單位矩陣卻沒問題 我矩陣型態是double 判斷式 for(i=0;i<3;i++){ for(j=0;j<3;j++){ if((i==j&&temM.myMatrix[i][j]==1)||(i!=j&&temM.myMatrix[i][j]==0)){ } else{ System.out.printf("this matrix don't have inverse matrix\n"); return NULL; } } } 感謝不吝情指點 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.130.210 ※ 編輯: yahooc 來自: 112.104.130.210 (10/19 14:56)
james732:直覺想到的是浮點數誤差 10/19 14:57
lachtchlee:老問題 不要用double 去跟零比較 0.000n個0 != 0 10/19 15:08
yahooc:恩 轉成INT後判斷就正確了 10/19 15:27
yahooc:感謝不吝情指點 10/19 15:36
chchwy:浮點數不應該用等號判斷,老問題了 10/19 15:38