世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。
BaseUtils功能:
- 基本数据类型的转换
- 基本数据类型的计算
- 基于BigDecimal的精确计算
- 随机数
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));
}
}
}