(double double1, double double2)
| 1764 | } |
| 1765 | |
| 1766 | private static boolean lessThan(double double1, double double2) { |
| 1767 | // A slightly specialized version of |
| 1768 | // Double.compare(double1, double2) < 0. |
| 1769 | |
| 1770 | // Non-zero and non-NaN checking. |
| 1771 | |
| 1772 | // NaNs are equal to other NaNs and larger than any other double. |
| 1773 | if (Double.isNaN(double1)) { |
| 1774 | return false; |
| 1775 | } else if (Double.isNaN(double2)) { |
| 1776 | return true; |
| 1777 | } |
| 1778 | |
| 1779 | if (double1 == 0d && double1 == double2) { |
| 1780 | long bits1 = Double.doubleToLongBits(double1); |
| 1781 | long bits2 = Double.doubleToLongBits(double2); |
| 1782 | long neg0 = Double.doubleToLongBits(-0.0); |
| 1783 | return bits1 != bits2 && bits1 == neg0; |
| 1784 | } |
| 1785 | |
| 1786 | // Deal with +0.0 and -0.0. |
| 1787 | //long d1 = Double.doubleToRawLongBits(double1); |
| 1788 | //long d2 = Double.doubleToRawLongBits(double2); |
| 1789 | return double1 < double2; |
| 1790 | } |
| 1791 | |
| 1792 | private static boolean isSame(float double1, float double2) { |
| 1793 |
no test coverage detected