java.lang包中的Math类包含许多用来进行科学计算的方法,这些方法可以直接通过类名调用。

Math类中还有两个静态常量E和PI,分别表示自然对数和圆周率。

以下是Math类的常用方法

pulblic static long abs(double a) 返回a的绝对值。

pulblic static double max(double a, double b)返回a、b的最大值

pulblic static double min(double a, double b)返回a、b的最小值

pulblic static double random()产生一个0到1之间的随机数(不包括0和1)

pulblic static double pow(double a, double b)返回a的b次幂

pulblic static double sqrt(double a)返回a的平方根

pulblic static double log(double a)返回a的对数

pulblic static double sin(double a)返回a的正弦值

pulblic static double asin(double a)返回a的反正弦值

BigInteger类

程序有时需要处理大整数, java.math包中的BigInteger类提供任意精度的整数运算。可以使用构造方法public BigInteger(String val)构造一个十进制的BigInteger对象。

以下是BigInteger类的常用方法。

public BigInteger add(BigInteger val)返回当前大整数对象与参数指定的大整数对象的和。

public BigInteger subtract(BigInteger val)返回当前大整数对象与参数指定的大整数对象的差。

public BigInteger multiply(BigInteger val)返回当前大整数对象与参数指定的大整数对象的积。

public BigInteger divide(BigInteger val)返回当前大整数对象与参数指定的大整数对象的商。

public BigInteger remainder(BigInteger val)返回当前大整数对象与参数指定的大整数对象的余。

public int compareTo(BigInteger val)返回当前大整数对象与参数指定的大整数对象的比较结果,返回值是1、-1或0,分别表示当前大整数对象大于、小于或等于参数指定的大整数。

public BigInteger abs()返回当前大整数对象的绝对值。

public BigInteger pow(int a)返回当前大整数对象的a次幂。

public String toString(int p)返回当前大整数对象p进制的字符串表示。

代码展示如下:

import java.math.BigInteger;

public class Test02 {

    public static void main(String[] args) {
// TODO Auto-generated method stub
double a = 5.0;
double st = Math.sqrt(a);
System.out.println(a + "的平方根:" + st);
BigInteger result;
BigInteger one = new BigInteger("123456789");
BigInteger two = new BigInteger("987654321");
result = one.multiply(two);
System.out.println(result);
} }

截图如下所示:

Random类

可以使用Math类调用其类方法random()返回一个0至1之间的随机数(不包括0和1),如下代码所示:

int r = (int)(Math.random() * 100) + 1;
System.out.println(r);

得到的结果是在1~100的一个随机整数(包括1和100)。

java提供了更为灵活的用于获得随机数的Random类(该类在java.util包中)。使用Random类的如下构造方法:

public Random();

public Random(long seed);

创建Random对象,其中第二个构造方法使用参数seed指定的种子创建一个Random对象。人们习惯地将Random对象称为随机数生成器。例如,下列随机数生成器random调用不带参数的nextInt()方法返回一个随机整数。

import java.util.Random;

public class Test04 {

    public static void main(String[] args) {
// TODO Auto-generated method stub
Random random = new Random();
System.out.println(random.nextInt());
}
}

运行结果如下所示:

如果想让随机数生成器random返回一个0至n之间(包括0,但不包括n)的随机数,可以让random调用带参数的nextInt(int m)方法(参数m必须取正整数值),例如,

System.out.println(random.nextInt(100));

运行结果如下所示:

如果程序需要随机得到true和false两个表示真和假的boolean值,可以让random调用nextBoolean()方法,例如,

System.out.println(random.nextBoolean());

运行结果如下所示:

review16的更多相关文章

随机推荐

  1. 2048 worker_connections are not enough while connecting to upstream

    2048 worker_connections are not enough while connecting to upstream http://mailman.nginx.org/piperma ...

  2. 分布式缓存的一致性Hash算法 2 32

    w 李智慧

  3. ehcache 配置持久化到硬盘(四)

    Ehcache默认配置的话 为了提高效率,所以有一部分缓存是在内存中,然后达到配置的内存对象总量,则才根据策略持久化到硬盘中,这里是有一个问题的,假如系统突然中断运行 那内存中的那些缓存,直接被释放掉 ...

  4. checkmarx使用笔记、原理

    checkmarks是一款商业的代码静态分析工具,和pmd类似的地方是他分析的是java文件,而非class文件.checkmarks使用 .net开发,必须安装在windows上,它的规则也是类似. ...

  5. 1、Python request(爬虫-百度翻译)

    #encoding=utf-8 import requests def fanyi(): while True: context = input("请输入翻译的内容(退出q):") ...

  6. 教你管理SQL实例系列(1-15)

    全系列转自:51CTO ->jimshu http://jimshu.blog.51cto.com 目录及原本连接如下: 教你管理SQL实例(1)数据库实例 教你管理SQL实例(2)服务启动帐户 ...

  7. Java基础—复用类

    复用代码是Java众多引人注目的功能之一. 一般而言,实现代码重用java提供了两种方式:组合以及继承. 组合:新的类由现有类的对象所组成.(复用现有代码的功能,而非它的形式) 继承:按照现有类的类型 ...

  8. 5 Best VPNs for Ubuntu

    https://www.bestvpn.com/blog/6268/5-best-vpns-for-ubuntu/?nabe=6412130213429248:0&utm_referrer=h ...

  9. Something haunts me in Python

    @1: 在查看"The Python Library Reference"(https://docs.python.org/2/library/stdtypes.html#sequ ...

  10. PHP基本语法,类基本函数

    C#中函数四要素返回类型,函数名,参数列表,函数体pulic void show()php函数定义1.最简单的定义function show(){echo "hello"}show ...