JAVA | 30

来源:互联网 发布:caffe softmax 参数 编辑:程序博客网 时间:2024/06/01 08:30

Math 类

如果进行负数四舍五入时,小数位大于 0.5 才进位,小于或者等于 0.5 不进位。

public class Main {    public static void main(String[] args) {        System.out.println(Math.round(2.5));        System.out.println(Math.round(-2.5));        System.out.println(Math.round(-2.51));    }}

Random 类

import java.util.Random;public class Main {    public static void main(String[] args) {        int array [] = new int [10];        Random random = new Random();        int foot = 0;        while (foot < 10){            int data = random.nextInt(100);            if(!isRepeat(array,data)){                array[foot] = data;                foot ++;            }        }        java.util.Arrays.sort(array);        for(int i = 0; i < array.length; i ++){            System.out.println(array[i]);        }    }    public static boolean isRepeat(int array [], int data){        for(int i = 0; i < array.length; i ++){            if(array[i] == data){                return true;            }        }        return false;    }}

BigInteger 类

import java.math.BigInteger;public class Main {    public static void main(String[] args) {        System.out.println(Byte.MAX_VALUE);        System.out.println(Short.MAX_VALUE);        System.out.println(Integer.MAX_VALUE);        System.out.println(Long.MAX_VALUE);        System.out.println(Double.MAX_VALUE);        BigInteger bigA = new BigInteger("12345678901234567845678909");        BigInteger bigB = new BigInteger("987654321234567898798");        System.out.println(bigA.add(bigB));        System.out.println(bigA.subtract(bigB));        System.out.println(bigA.multiply(bigB));        System.out.println(bigA.divide(bigB));        BigInteger result [] = bigA.divideAndRemainder(bigB);        System.out.println(result[0] + " " + result[1]);    }}

BigDecimal

实现准确的四舍五入

import java.math.BigDecimal;public class Main {    public static void main(String[] args) {        System.out.println(round(-23343.434232,3));    }    public static double round(double num, int scale){        BigDecimal bidA = new BigDecimal(num);        BigDecimal bidB = new BigDecimal(1);        return bidA.divide(bidB,scale,BigDecimal.ROUND_HALF_UP).doubleValue();    }}