java Random类 System类 BigInteger类 BigDecimal类

 

Random类的概述

/**

 A:

 * 此类用于产生随机数如果用相同的种子创建两个 Random 实例,
* 则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。

 

 

* B:构造方法
* public Random()
* public Random(long seed)


* C:成员方法
* public int nextInt()
* public int nextInt(int n)(重点掌握)

 

//生成在0到n范围内的随机数,包含0不包含n

 

 

system类

 

* A:System类的概述
* System 类包含一些有用的类字段和方法。它不能被实例化。


* B:成员方法
* public static void gc()        实际是调用 object类中finalize方法 清理垃圾;垃圾回收器  

 

            public static void exit(int status)

           System.exit(1); //非0状态是异常终止,退出jvm
           System.out.println("11111111111");


 

* public static long currentTimeMillis()    //到当前的毫秒数


 

* pubiic static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)    // 拷贝数组   从一个数组拷贝到另一个数组

                int[] src = {11,22,33,44,55};
               int[] dest = new int[8];
              for (int i = 0; i < dest.length; i++) {
                System.out.println(dest[i]);
             }
              System.out.println("--------------------------");
             System.arraycopy(src, 0, dest, 0, src.length); //将数组内容拷贝

 

 

 

 

BigInteger的概述

** A:
* 可以让超过Integer范围内的数据进行运算
* B:构造方法
* public BigInteger(String val)
* C:成员方法
* public BigInteger add(BigInteger val)
* public BigInteger subtract(BigInteger val)
* public BigInteger multiply(BigInteger val)
* public BigInteger divide(BigInteger val)
* public BigInteger[] divideAndRemainder(BigInteger val)
*/
public static void main(String[] args) {
//long num = 123456789098765432123L;                 //会提示出错    此时说明已超过界限
//String s = "123456789098765432123";                  //会提示出错    此时说明已超过界限

BigInteger bi1 = new BigInteger("100");
BigInteger bi2 = new BigInteger("2");

System.out.println(bi1.add(bi2)); //+
System.out.println(bi1.subtract(bi2)); //-
System.out.println(bi1.multiply(bi2)); //*
System.out.println(bi1.divide(bi2)); ///(除)

BigInteger[] arr = bi1.divideAndRemainder(bi2); //取除数和余数

for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}

 

BigDecimal类

 

 

* * A:BigDecimal的概述
* 由于在运算的时候,float类型和double很容易丢失精度,演示案例。
* 所以,为了能精确的表示、计算浮点数,Java提供了BigDecimal

* 不可变的、任意精度的有符号十进制数。
* B:构造方法
* public BigDecimal(String val)
* C:成员方法
* public BigDecimal add(BigDecimal augend)
* public BigDecimal subtract(BigDecimal subtrahend)
* public BigDecimal multiply(BigDecimal multiplicand)
* public BigDecimal divide(BigDecimal divisor)
* D:案例演示
* BigDecimal类的构造方法和成员方法使用
十进制表示1/3
0.3333333333333333333333333333333333333333
*/
public static void main(String[] args) {
//System.out.println(2.0 - 1.1);
/*BigDecimal bd1 = new BigDecimal(2.0); //这种方式在开发中不推荐,因为不够精确
BigDecimal bd2 = new BigDecimal(1.1);

System.out.println(bd1.subtract(bd2));*/

/*BigDecimal bd1 = new BigDecimal("2.0"); //通过构造中传入字符串的方式,开发时推荐
BigDecimal bd2 = new BigDecimal("1.1");

System.out.println(bd1.subtract(bd2));*/

BigDecimal bd1 = BigDecimal.valueOf(2.0); //这种方式在开发中也是推荐的
BigDecimal bd2 = BigDecimal.valueOf(1.1);

System.out.println(bd1.subtract(bd2));
}

}

posted @ 2017-03-04 08:37  yimian  阅读(229)  评论(0编辑  收藏  举报
访问人数:AmazingCounters.com