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. 不同格式的ip 统一转成ip列表

    支持以下格式的ip地址: 192.168.1.0/24 192.168.1.1-23 192.168.1.123 代码如下: package finder; import java.net.InetA ...

  2. grep和正则表达式参数

    一:grep参数 1,-n  :显示行号 2,-o  :只显示匹配的内容 3,-q  :静默模式,没有任何输出,得用$?来判断执行成功没有,即有没有过滤到想要的内容 4,-l  :如果匹配成功,则只将 ...

  3. SpringMVC:学习笔记(5)——数据绑定及表单标签

    SpringMVC——数据绑定及表单标签 理解数据绑定 为什么要使用数据绑定 基于HTTP特性,所有的用户输入的请求参数类型都是String,比如下面表单: 按照我们以往所学,如果要获取请求的所有参数 ...

  4. css的继承性理解

    1) 所有的text 相关属性都被继承: 如 font-family font-size; font-style;font-weight;font;font-variant;letter-spacin ...

  5. Linux centos7 安装 keepalived-2.0.6

    1.下载(版本:2.0.6) cd /home/install/ wget http://124.205.69.170/files/1255000006EF2AA1/www.keepalived.or ...

  6. AWK的行循环控制

    1.控制函数:next,getline,exit. next:      该行的action运行到next就停止,读取下一行. getline:1.没有"<"或“|”的情况下 ...

  7. 20145230《java学习笔记》第十周学习总结

    20145230<Java程序设计>第十周学习总结 教材学习内容总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或 ...

  8. GIT截图

    GIT截图 今天首次成功用了GIT上传了JAVA代码,感觉一下次就能上传这么多代码,确实比在网页上方便.自己一开始根本摸不着头脑,不知道怎样使用GIT软件,但在学姐博客的指导下,在同学热情且耐心地指导 ...

  9. 大话设计模式之PHP篇 - 适配器模式

    定义将一个类的接口转换成客户希望的另外一个接口,使用原本不兼容的而不能在一起工作的那些类可以在一起工作. 角色Target适配目标,该角色定义把其他类转换为何种接口,也就是我们的期望接口.Adapte ...

  10. Go Mysql驱动

    Golang中MYSQL驱动 Mysql库https://github.com/go-sql-driver/mysql Go本身不提供具体数据库驱动,只提供驱动接口和管理. 各个数据库驱动需要第三方实 ...