Как сравнить два значения MyDouble? - PullRequest
1 голос
/ 03 апреля 2011

Я хочу сравнить два MyDouble значения с нулем.

if(getA()>(MyDouble.zero)) //where getA() is MyDouble 

Но это не позволяет мне сделать это.Кто-нибудь знает, как это решить?

Ответы [ 2 ]

2 голосов
/ 03 апреля 2011

Вы должны написать Comparator<MyDouble>, который делает эту работу. Вы реализуете интерфейс Comparator .

Вы не сможете использовать символы сравнения «>» для этого. Вы будете делать что-то вроде этого:

x.compareTo(y)
0 голосов
/ 03 апреля 2011

Вы должны реализовать решение Duffmo, так как это то, что делают Double и все Numbers.Другим способом решения этой проблемы является прямой доступ к полям или предоставление конкретного метода для сравнения.(Это может быть более эффективным, чем реализация compareTo)

if(getA().value > MyDouble.ZERO.value) // Constants are in UPPER_CASE

или

if(getA().greaterThan(MyDouble.ZERO))
...