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类包括常用的数学运算和一些数学函数.还提供了一些常用的常 ...
随机推荐
- java linux ssh jar
Ganymed SSH-2 for Java http://www.ganymed.ethz.ch/ssh2/ Ganymed SSH-2 for Java is a library which im ...
- 总结 vb与数据库的连接方法
总结 vb与数据库的连接方法 分类:vb数据库 (4672) (38) 举报 收藏 总结:vb与数据库连接方式,两种分法. 根据是否使用ODBC(驱动程序)来分: 1.有源连接 2.无源连接. ...
- volatile特性
volatile保证可见性 一旦一个共享变量(类的成员变量.类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: 1)保证了不同线程对这个变量进行操作的可见性,即一个线程修改了某个变量 ...
- WPF绑定之索引器值变化通知
背景 在某些应用中,需要在界面上绑定到索引器,并在值发生变化时实时更新. 解决方案 只要将包含索引器的类实现INotifyPropertyChanged接口,并在索引值更改时引发PropertyCha ...
- HashMap概述及其三种遍历方式
一.HashMap概述: 1.HashMap是一个散列表,它存储的是键值对(key-value)映射: 2.HashMap继承AbstractMap,实现了Map,Cloneable,Serializ ...
- 基于 vue+element ui 的cdn网站(多页面,都是各种demo)
前言:这个网站持续更新中...,有网上预览,github上也有源码,喜欢记得star哦,欢迎留言讨论. 网站地址:我的个人vue+element ui demo网站 github地址:yuleGH g ...
- 序列化模块1 json
......得到一个 字符串 的结果 过程就叫序列化 字典 / 列表 / 数字 /对象 -序列化->字符串 为什么要序列化 # 1.要把内容写入文件 序列化 # 2.网络传输数据 序列化 字符串 ...
- Tips——canvas闪屏问题的处理
一.问题描述 在画canvas时,遇到屏幕瞬间空白的情况(大约1~2帧),造成用户体验不好. 二.原因 canvas的绘图过程是:先擦出整个画布:然后浏览器到达重绘时间点后,在空白的canvas上作画 ...
- .NET Core 微服务架构-Docker部署
本文主要介绍通过Docker来部署通过.NET Core开发的微服务架构,部署的微服务主要包括统一网关(使用Ocelot开发).统一认证(IdentityServer4).应用服务(ASP.NET C ...
- 区别String、StringBuilder、Stringbuffer的总结
1.三者在执行速度上: StringBuilder > StringBuffer > String 2. String:不可变长字符串 StringBuilder : 为可变长字符串 St ...