Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。

常用方法:

1、static 数值类型 abs(数值类型 a) 
     返回 double 值的绝对值。

2、static double ceil(double a) 
     返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数。 也叫向上取值

3、static double floor(double a) 
    返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。也叫向下取值

4、static 数值类型 round (数值类型 a) 
     返回最接近参数的数值。也叫四舍五入

5、static double random() 
     返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。也叫随机数函数。

Random 类:

此类的实例用于生成伪随机数流。如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了保证此属性的实现,为类 Random 指定了特定的算法。为了 Java 代码的完全可移植性,Java 实现必须让类 Random 使用此处所示的所有算法。但是允许 Random 类的子类使用其他算法,只要其符合所有方法的常规协定即可。

常用方法:

1、Random() 
     创建一个新的随机数生成器。

2、数值类型 next数值类型 (int bits) 
     生成下一个伪随机数。

代码示例:

 import java.util.Random;

 public class MathTest {
public static void main(String[] args) {
System.out.println("绝对值:"+Math.abs(-3));
System.out.println("向上取整:"+Math.ceil(3.14));
System.out.println("向下取整:"+Math.floor(-3.14));
System.out.println("四舍五入:"+Math.round(3.54));
System.out.println("随机数:"+Math.random());
//Random类产生特定范围的随机数
Random random1 = new Random(1);
Random random2 = new Random(1);
int randomNum = random1.nextInt(10)+1; //产生 的 随机数就是0-10之间
int randomNum2 = random2.nextInt(10)+1; //产生 的 随机数就是0-10之间
System.out.println("随机数:"+ randomNum+" 随机数2:"+ randomNum2);
//需求: 编写一个函数随机产生四位的验证码。
char[] arr = {'我','是','沈','a','阳','f','B'};
StringBuilder sb = new StringBuilder();
Random random = new Random();
//需要四个随机数,通过随机数获取字符数组中的字符,
for(int i = 0 ; i< 4 ; i++){
int index = random.nextInt(arr.length); //产生的 随机数必须是数组的索引值范围之内的。
sb.append(arr[index]);
}
System.out.println("验证码:"+ sb);
}
}

Math类和Random类(数学公式相关类)的更多相关文章

  1. Java基础之Java常用类--Object类,字符串相关类,包装类,日期相关类,数字相关类

    Java是一种面向对象的语言,也就是将万事万物可以描述为对象,特点如下: 1.面向对象是常见的一种思考习惯,符合人们的思考习惯.2.面向对象的出现,将复杂的事情简单化.3.面向对象的出现,将之前过程中 ...

  2. Java常用类(一)Math类和Random类

    一.Math类 Math类中有一些常用的数学函数,比较简单,不进行详细解释,仅举例说明: 1.绝对值和取整 import java.lang.Math; public class Mat { publ ...

  3. java常用类详细介绍及总结:字符串相关类、日期时间API、比较器接口、System、Math、BigInteger与BigDecimal

    一.字符串相关的类 1.String及常用方法 1.1 String的特性 String:字符串,使用一对""引起来表示. String声明为final的,不可被继承 String ...

  4. java自学第4期——:Scanner类、匿名对象介绍、Random类、ArrayList集合、标准类格式、String类、static静态、Arrays工具类、Math类(1)

    一.Scanner类 1.api简介: 应用程序编程接口 2.Scanner类: 作用:获取键盘输入的数据 位置: java.util.Scanner. 使用:使用成员方法nextInt() 和 ne ...

  5. Java常用类之【Math类、Random类、System类、Runtime类】

    一.Math类 Math类 [绝对值]Math.abs();//返回对应类型的绝对值 [最大值和最小值]Math.max(int a, int b) ,Math.min(int a,int b);(其 ...

  6. 14-02 Java Math类,Random类,System类,BigDecimal类

    Math类 Math的方法 package cn.itcast_01; /* * Math:用于数学运算的类. * 成员变量: * public static final double PI * pu ...

  7. Java从零开始学二十八(Math类和Random类)

    一.Math概述 提供了常用的数学运算方法和两个静态常量E(自然对数的底数)和PI(圆周率) 二.常用方法 package com.pb.demo1; public class MathTest { ...

  8. 处理数字的类 —— Math类 、 Random类 、 BigDecimal类 与 BigInteger类

    在我们学习C语言时,我们处理数据时要调用很多函数,那么,Java也有很多的方法可以来处理数值的类. 那么,在本篇博文中,本人就来讲解三个用于处理数值的类 -- Math类 . Random类 与 Bi ...

  9. Math类的random()方法

    Math类的random()方法 Math类的random()方法可以生成大于等于0.0.小于1.0的double型随机数. Math.random()方法语句基础上处理可获得多种类型.或任意范围的随 ...

随机推荐

  1. 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

    一.第一种写法 package com.pb.demo1; import java.util.Scanner; /** * 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字. ...

  2. 【原】xcode5&IOS7及以下版本免证书真机调试记录

    搞了有一段IOS开发了,之前一直在企业做,近阶段主要在公司做C++服务端开发,打算在空闲实现搞搞个人开发,为自己赚钱,IDP还没申请下来,所以先用此方法在越狱设备上先做一下app的免证书真机调试,先记 ...

  3. 可折叠的ToolBar+抽屉菜单NavigationView+浮动按钮FloatButton

    使用Material Design风格的ToolBar和抽屉导航 先看个简单的运行效果 主要记录下布局的写法 1 用到的Google Design依赖和V7包依赖 compile 'com.andro ...

  4. 使用OLE DB读写Excel

    说明: 使用这种技术的好处是无需引用对象,坏处是无法处理类似合并单元格这样的复杂情况 一些更新: 为了使用Office 2010,需要安装Microsoft Access 2010 数据库引擎可再发行 ...

  5. ASP.NET MVC 在WebService中Token的使用方法

    最近发现公司接口的验密方式很简单,就是简单的用户名密码校验.客户方面的负责人说要修改一下,所以想起了微信的验证密码的方式故写了这个Demo以供大家学习参考: 接口:WebService 方式:Toke ...

  6. MFC9.0 Outlook控件的标题显示无法修改

    这是我在开发中遇到的问题,现记录下来,以便帮助你们. 不想看废话的可以只看最后三行,但你会错过很多. 俗话说的好啊,"Wise men learn by other men's mistak ...

  7. oracle缓存池使用解析

    oracle有三种类型的缓存池,分别是default,keep和recycle.默认情况下只会使用default缓存池,另外两种需要额外配置. keep缓存池相当于是一直很热的default缓存池,缓 ...

  8. MyEclipse 6.5 代码自动提示功能配置教程

    1. 打开MyEclipse 6.0.1,然后“window”→“Preferences” 2. 选择“java”,展开,“Editor”,选择“Content Assist”. 3. 选择“Cont ...

  9. 【学习/研发】嵌入式Linux/Android开发有它就够了——迅为4412开发板

    网站:http://www.topeetboard.com 光盘资料+网盘资料+配套视频+售后支持,助您加速学习研发的进程 产品介绍 iTOP-Exynos4412开发板采用 Exynos4412的主 ...

  10. [转]PhoneGap使用PushPlugin插件实现消息推送

    本文转自:http://my.oschina.net/u/1270482/blog/217661 http://devgirl.org/2013/07/17/tutorial-implement-pu ...