⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 numberhelper.java

📁 java 的源代码
💻 JAVA
字号:
package com.reddragon2046.base.utilities.data.predicates;

import java.math.BigDecimal;
import java.math.BigInteger;

final class NumberHelper
{

    private NumberHelper()
    {
    }

    static BigDecimal asBigDecimal(Number n)
    {
        return (n instanceof BigDecimal) ? (BigDecimal)n : new BigDecimal(n.toString());
    }

    static BigInteger asBigInteger(Number n)
    {
        return (n instanceof BigInteger) ? (BigInteger)n : asBigDecimal(n).toBigInteger();
    }

    static int compare(Number n1, Number n2, Class mode)
    {
        if(mode.equals(java.lang.Integer.class))
            return n1.intValue() >= n2.intValue() ? ((int) (n1.intValue() <= n2.intValue() ? 0 : 1)) : -1;
        if(mode.equals(java.lang.Long.class))
            return n1.longValue() >= n2.longValue() ? ((int) (n1.longValue() <= n2.longValue() ? 0 : 1)) : -1;
        if(mode.equals(java.lang.Float.class))
            return n1.floatValue() >= n2.floatValue() ? ((int) (n1.floatValue() <= n2.floatValue() ? 0 : 1)) : -1;
        if(mode.equals(java.lang.Double.class))
            return n1.doubleValue() >= n2.doubleValue() ? ((int) (n1.doubleValue() <= n2.doubleValue() ? 0 : 1)) : -1;
        if(mode.equals(java.lang.Byte.class))
            return n1.byteValue() >= n2.byteValue() ? ((int) (n1.byteValue() <= n2.byteValue() ? 0 : 1)) : -1;
        if(mode.equals(java.lang.Short.class))
            return n1.shortValue() >= n2.shortValue() ? ((int) (n1.shortValue() <= n2.shortValue() ? 0 : 1)) : -1;
        if(mode.equals(java.math.BigInteger.class))
            return asBigInteger(n1).compareTo(asBigInteger(n2));
        if(mode.equals(java.math.BigDecimal.class))
            return asBigDecimal(n1).compareTo(asBigDecimal(n2));
        else
            throw new IllegalArgumentException("unknown subclass of java.lang.Number: " + mode.getClass());
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -