java Math数学工具及Random随机函数
Math类包含用于执行基本数学运算的方法,如绝对值、对数、平方根和三角函数。它是一个final类,其中定义的都是一些常量和静
态方法。常用方法如下:
public static double sqrt(double a) //求平方根
public static double ceil(double a) //求比a大的第一个整数
public static double floor(double a) //求比a小的第一个整数
public static double pow(double a,double b) //求指数,a为底数,b为指数
puiblic static long round(double a) //四舍五入
public staic int round(float a) //四舍五入
public static double random() //产生0~1的随机数
java三种产生随机数的方法:
1.通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字
2.通过Math.random()返回一个0到1的随机double值
3.通过Random类来产生一个随机数,这是专业的Random工具类,功能强大
Random类中实现的随机算法是伪随机,即有规则的随机。有一个起源种子数(seed),相同种子的Random对象,相同次数生成
的随机数一样
构造方法:
1.public Random()
2.public Random(long seed)
常用方法
public void nextBytes(byte[] bytes)
public int nextInt()
public int nextInt(5) //[0,5)的整数,永远取不到5
public int nextBoolean() //布尔值
public int nextFloat() //0-1浮点数
public int nextDouble() //0-1 double类型浮点数
Math类包含用于执行基本数学运算的方法,如绝对值、对数、平方根和三角函数。它是一个final类,其中定义的都是一些常量和静
态方法。常用方法如下:
public static double sqrt(double a) //求平方根
public static double ceil(double a) //求比a大的第一个整数
public static double floor(double a) //求比a小的第一个整数
public static double pow(double a,double b) //求指数,a为底数,b为指数
puiblic static long round(double a) //四舍五入
public staic int round(float a) //四舍五入
public static double random() //产生0~1的随机数
java三种产生随机数的方法:
1.通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字
2.通过Math.random()返回一个0到1的随机double值
3.通过Random类来产生一个随机数,这是专业的Random工具类,功能强大
Random类中实现的随机算法是伪随机,即有规则的随机。有一个起源种子数(seed),相同种子的Random对象,相同次数生成
的随机数一样
构造方法:
1.public Random()
2.public Random(long seed)
常用方法
public void nextBytes(byte[] bytes)
public int nextInt()
public int nextInt(5) //[0,5)的整数,永远取不到5
public int nextBoolean() //布尔值
public int nextFloat() //0-1浮点数
public int nextDouble() //0-1 double类型浮点数
import java.util.Random;
public class MathRandomDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(Math.floor(10.55)); //比它小的第一个整数
System.out.println(Math.ceil(10.55)); //比它大的第一个整数
System.out.println(Math.pow(2,3)); //求指数2的3次方
System.out.println(Math.round(10.6)); //四舍五入
System.out.println(Math.sqrt(64)); //比它小的第一个整数
System.out.println(Math.random());
Random random1 = new Random();
System.out.println(random1.nextInt());
Random random2 = new Random(10);//随机数不变
System.out.println(random2.nextInt());
Random random3 = new Random(System.currentTimeMillis());//将数字设为时间的毫秒数,则在不断变化
System.out.println(random3.nextInt());
System.out.println(random3.nextInt(5)); //随机生成[0,5),取不到 5
System.out.println(random3.nextBoolean());
System.out.println(random3.nextDouble());//双精度
System.out.println(random3.nextFloat());//单精度
}
}
java Math数学工具及Random随机函数的更多相关文章
- 常用类--Date日期类,SimpleDateFormat日期格式类,Calendar日历类,Math数学工具类,Random随机数类
Date日期类 Date表示特定的时间,精确到毫秒; 构造方法: public Data() public Date(long date) 常用方法: public long getTime() pu ...
- python常用标准库(math数学模块和random随机模块)
常用的标准库 数学模块 import math ceil -- 上取整 对一个数向上取整(进一法),取相邻最近的两个整数的最大值. import math res = math.ceil(4.1) p ...
- Python---基础---常用的内置模块(Github、P有charm、math数学模块和random随机数模块,做一些简单的练习)
2019-05-24 ----------------------------------
- java.math.BigDecimal保留两位小数,保留小数,精确位数
http://blog.csdn.net/yuhua3272004/article/details/3075436 使用java.math.BigDecimal工具类实现 java保留两位小数问题 ...
- Java 之 数学相关类 Math、BigInteger、BigDecimal
一.java.lang.Math 类 一.Math 类概述 java.lang.Math 类包含用于执行基本数学运算的方法,如指数.对数.平方根和三角函数.类似于这样的类,其所有方法均为静态方法,并且 ...
- 编写Java程序,创建一个数学工具类,将该类设计为final类,Final 修饰符的使用。
返回本章节 返回作业目录 需求说明: 创建一个数学工具类. 将该类设计为final类. 将该类的构造方法的访问权限定义为私有,以防止外界实例化该类. 在该类定义静态double类型常量π,其值为3.1 ...
- JavaSE-基础语法(二)-系统类(java.lang.*)和工具类(java.util.*)
系统类(java.lang.*)和工具类(java.util.*) 一.系统类(java.lang.*) 这个包下包含java语言的核心类,如String.Math.System和Thread类等,使 ...
- java的数学函数总结
java的数学函数都放在java.lang这个包中,并且这些函数的方法在类Math中是作为static方法出现的,所以要引用一个特定的函数,只需将类Math和一个圆点写在要使用的方法前就好.如方法sq ...
- Java—Math类和随机数类
一.Math类(主要封装算数运算的静态方法) 定义: Math是没有构造方法的. java语言中提供了一个执行数学基本运算的Math类,Math类包括常用的数学运算和一些数学函数.还提供了一些常用的常 ...
随机推荐
- cordova打包APK,SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode ...
javascript 严格模式 第一次接触let关键字,有一个要非常非常要注意的概念就是”javascript 严格模式”,比如下述的代码运行就会报错: let hello = 'hello worl ...
- PHP数组基本的操作方法
1.数组操作的基本函数 数组的键和值: array_values($arr);获得数组的值 array_keys($arr);获得数组的键名 array_flip($arr);数组中的值与键名互换(如 ...
- git分支branch合并到主分支master
如何使用git将分支branch合并到主干master上 对于一人独立使用git进行系统开发时,branch分支相当于版本(Version),如果每次都将新的分支branch提交到GitHub上,则会 ...
- Freemarker详解一
1 截取字符串有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的例子就可以自定义显示的长度<#if title.content?length lt 8> ...
- Intellij IDEA run coverage之覆盖率测试
Intellij IDEA run coverage之覆盖率测试 idea 的coverage + 我们自己写的测试用例.最后看一下,我们要测的代码有没有测试到,这是一个不错的提高代码质量的方法. i ...
- 微信小程序之雪碧图(css script)
今天有朋友问我关于微信小程序中如何在不占用大量网络带宽的情况下快速加载图片,我给他推荐了两种方式 1.雪碧图(css script),有过前端经验的朋友应该都有接触过. 2.懒加载. 由于时间关系我就 ...
- 移动端实现上拉加载更多(使用dropload.js vs js)
做下笔记,:移动端实现上拉加载更多,其实是数据的分段加载,在这里为了做测试我写了几个json文件作为分段数据: 方式一:使用dropload.js; 配置好相关参数及回调函数就可使用:代码如下 var ...
- hallo world
- python之函数的参数
1.位置参数: 例如计算一个整数的平方: def power(x) return x * x 显然参数x就是一个位置参数,如果要是计算5*5*5..............*5 ,这个函数就太麻烦了, ...
- 网络I/O模型--03非阻塞模式(ServerSocket与Socket的超时处理)--解除accept()、 read()方法阻塞
对于阻塞方式的一种改进是在应用程序层面上将 “一直等待 ”的状态主动打开: 这种模式下,应用程序的线程不再一直等待操作系统的 I/O状态,而是在等待一段时间后就解除阻塞.如果没有得到想要的结果,则再次 ...