hbw-utils - BaseUtils

84 阅读2分钟

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。

BaseUtils功能:

  1. 基本数据类型的转换
  2. 基本数据类型的计算
  3. 基于BigDecimal的精确计算
  4. 随机数

github.com/houbbbbb/ut…

public class BaseUtilsTest {

    @Test
    public void test() {
        Byte b = BaseUtils.toByte("127");
        System.out.println(b);
        byte bb = BaseUtils.forByte("-128");
        System.out.println(bb);

        Short s = BaseUtils.toShort("1234");
        System.out.println(s);
        short ss = BaseUtils.forShort("1432");
        System.out.println(ss);

        Integer i = BaseUtils.toInteger("98765");
        System.out.println(i);
        int ii = BaseUtils.forInt("56789");
        System.out.println(ii);

        Long l = BaseUtils.toLong("6789876");
        System.out.println(l);
        long ll = BaseUtils.forLong("453212345");
        System.out.println(ll);

        Float f = BaseUtils.toFloat("789.0987");
        System.out.println(f);
        float ff = BaseUtils.forFloat("7865.4567");
        System.out.println(ff);

        Double d = BaseUtils.toDouble("9876.54321");
        System.out.println(d);
        double dd = BaseUtils.forDouble("987.6789");
        System.out.println(dd);

        char c = BaseUtils.toUpperCase('a');
        System.out.println(c);
        c = BaseUtils.toLowerCase('D');
        System.out.println(c);
        c = BaseUtils.toLowerCase('v');
        System.out.println(c);

        int ci = BaseUtils.toInt('c');
        System.out.println(ci);
        ci = BaseUtils.toUpperInt(ci);
        System.out.println(ci);
        ci = BaseUtils.toLowerInt(ci);
        System.out.println(ci);
        char cc = BaseUtils.toLower(ci);
        System.out.println(cc);
        cc = BaseUtils.toUpper(ci);
        System.out.println(cc);

        long l3 = BaseUtils.toInt(888L);
        System.out.println(l3);
    }

    int[] is = {5, 7, 4, 3, 9, 6, 8};
    long[] ls = {4, 8, 9, 7, 6, 2};
    double[] ds = {4.5, 5.8, 8.9, 9.7, 7.3};

    @Test
    public void sumTest() {

        int sum = BaseUtils.sum(is);
        System.out.println(sum);

        long lsum = BaseUtils.sum(ls);
        System.out.println(lsum);

        double dsum = BaseUtils.sum(ds);
        System.out.println(dsum);
    }

    int i1 = 9;
    int i2 = 3;
    long l1 = 343543L;
    long l2 = 898934L;
    double d1 = 8989.987;
    double d2 = 6744.898;

    @Test
    public void subtractTest() {
        int isub = BaseUtils.subtract(i1, i2);
        System.out.println(isub);

        long lsub = BaseUtils.subtract(l1, l2);
        System.out.println(lsub);

        double dsub = BaseUtils.subtract(d1, d2);
        System.out.println(dsub);
    }

    @Test
    public void multiTest() {
        int im = BaseUtils.multi(is);
        System.out.println(im);

        long lm = BaseUtils.multi(ls);
        System.out.println(lm);

        double dm = BaseUtils.multi(ds);
        System.out.println(dm);
    }

    @Test
    public void divide() {
        int id = BaseUtils.divide(i1, i2);
        System.out.println(id);

        long ld = BaseUtils.divide(l1, l2);
        System.out.println(ld);

        double dd = BaseUtils.divide(d1, d2);
        System.out.println(dd);
    }

    @Test
    public void moduleTest() {
        int im = BaseUtils.module(i1, i2);
        System.out.println(im);

        long lm = BaseUtils.module(l1, l2);
        System.out.println(lm);
    }

    @Test
    public void maxTest() {
        int max = BaseUtils.max(is);
        System.out.println(max);

        long lmax = BaseUtils.max(ls);
        System.out.println(lmax);

        double dmax = BaseUtils.max(ds);
        System.out.println(dmax);
    }

    @Test
    public void minTest() {
        int imin = BaseUtils.min(is);
        System.out.println(imin);

        long lmin = BaseUtils.min(ls);
        System.out.println(lmin);

        double dmin = BaseUtils.min(ds);
        System.out.println(dmin);
    }

    @Test
    public void absTest() {
        int i = -1;
        long l = -45L;
        double d = -9.09876;

        int ia = BaseUtils.abs(i);
        System.out.println(ia);

        long la = BaseUtils.abs(l);
        System.out.println(la);

        double da = BaseUtils.abs(d);
        System.out.println(da);
    }

    @Test
    public void powTest() {
        double d1 = 2;
        double d2 = 3;

        double dp = BaseUtils.pow(d1, d2);
        System.out.println(dp);
    }

    @Test
    public void boundaryTest() {
        double d = 0.567;

        double re = BaseUtils.ceil(d);
        System.out.println(re);

        re = BaseUtils.floor(d);
        System.out.println(re);

        re = BaseUtils.round(d);
        System.out.println(re);
    }

    @Test
    public void sctTest() {
        double d = 1;

        double re = BaseUtils.sin(Math.PI/2);
        System.out.println(re);

        re = BaseUtils.asin(d);
        System.out.println(re);

        re = BaseUtils.cos(Math.PI);
        System.out.println(re);

        re = BaseUtils.acos(d);
        System.out.println(re);

        re = BaseUtils.tan(Math.PI);
        System.out.println(re);

        re = BaseUtils.atan(d);
        System.out.println(re);
    }

    @Test
    public void expTest() {
        double d = 3;

        double re = BaseUtils.exp(d);
        System.out.println(re);

        re = BaseUtils.log(re);
        System.out.println(re);

        d = 1000;
        re = BaseUtils.log10(d);
        System.out.println(re);
    }

    @Test
    public void sqrtTest() {
        double d = 4;

        double re = BaseUtils.sqrt(d);
        System.out.println(re);
    }

    @Test
    public void bigDecimalTest() {
        String d1 = "2.356";
        String d2 = "3.567";
        int scale = 2;
        int round = BigDecimal.ROUND_HALF_UP;

        String re = BaseUtils.add(d1, d2, scale, round);
        System.out.println(re);
        re = BaseUtils.subtract(d1, d2, scale, round);
        System.out.println(re);
        re = BaseUtils.multi(d1, d2, scale, round);
        System.out.println(re);
        re = BaseUtils.divide(d1, d2, scale, round);
        System.out.println(re);

        int rei = BaseUtils.compare(d1, d2);
        System.out.println(rei);

        String cu = BaseUtils.toCurrency(d1, 1,  Locale.CANADA);
        System.out.println(cu);

        String per = BaseUtils.toPercent("0.0345678", 3, Locale.CHINA);
        System.out.println(per);
    }

    @Test
    public void randomTest() {
        for(int i=0; i<10; i++) {
            System.out.println(BaseUtils.random());
        }

        System.out.println();
        Random random = BaseUtils.getRandom();
        for(int i=0; i<10; i++) {
            System.out.println(random.nextInt());
        }

        System.out.println();
        for (int i = 0; i < 6; i++) {
            System.out.println(random.nextLong());
        }

        System.out.println();
        for (int i = 0; i < 10; i++) {
            System.out.println(random.nextInt(5));
        }
    }
}

在这里插入图片描述