package cn.liuliu.com;

import java.math.BigDecimal;
import java.math.BigInteger; /*
* 一、Math类?
*
* 1.是数学工具类,可以做一些数学计算。---->开方 对数 三角函数等!
* 2.所有的方法都是 静态方法, 不需要new ,直接调用类名即可!
*
* 二、BigInteger类?----->大数运算!
*
* 当数字超过了 long的范围 计算时用BigInteger!
*
* 1.定义大数,通过new的方式! 【计算的数字需要加上引号!】 2.计算值 a1.add(a2);两数相加!
* BigInteger a1=new BigInteger("454654654646464646464564");
BigInteger a2=new BigInteger("46546489798798798798787498");
BigInteger a3=a1.add(a2); //a1+a2;
*
* 三、BigDecimal类?------>浮点大数运算,提高浮点数运算精度!
*
* 计算机 二进制 表示浮点数会不精确! 解决方法 BigDecimal!
*
* 1.定义小数,通过new的方式!【计算的数字需要加上引号!】 2.计算值 a1.add(a2);两数相加!
* BigDecimal a1=new BigDecimal("0.09");
BigDecimal a2=new BigDecimal("0.01");
BigDecimal a3=a1.add(a2); //a1+a2;
*/
public class MathDemo {
public static void main(String[] args) {
math();
pow$and$sqrt();
random();
bigIntegerDemo();
bigDecimal();
}
//1.绝对值
public static void math(){
int i=Math.abs(-10);
System.out.print(i+" "); //
System.out.println();
double i01=Math.floor(7.9); //向下舍入 7
double i02=Math.ceil(8.1); //向上舍入 9
double i03=Math.round(1.4); //四舍五入规则!
System.out.println(i01+" "+i02+" "+i03);
}
//2.求 次方 和 开平方!
public static void pow$and$sqrt(){
double a=Math.pow(4, 4); //4的4次方。前面是数,后面是需要求的次方数!double定义!
double a1=Math.sqrt(16); //16开平方 4
System.out.print(a+" ");
System.out.println(a1);
}
//3.创建一个随机数 0---1之间!
public static void random(){
double a= Math.random(); //默认定义double 定义int 需要强制转型!
System.out.println(a);
}
//4.大数运算!
public static void bigIntegerDemo(){
BigInteger a1=new BigInteger("454654654646464646464564");
BigInteger a2=new BigInteger("46546489798798798798787498");
BigInteger a3=a1.add(a2); //a1+a2;
System.out.println("大数运算结果 "+a3);
}
//5.浮点大数运算!
public static void bigDecimal(){
System.out.println(0.09+0.01); //计算机 二进制 表示浮点数会不精确! 解决方法 BigDecimal!
BigDecimal a1=new BigDecimal("0.09");
BigDecimal a2=new BigDecimal("0.013");
BigDecimal a3=a1.add(a2);
BigDecimal a4=a1.divide(a2,3,BigDecimal.ROUND_HALF_UP); //不能整除 出现异常!数字【3】就是保留三位小数 【 BigDecimal.ROUND_HALF_UP】四舍五入!
System.out.println(a3);
System.out.println(a4);
} }

java 中 Math类的更多相关文章

  1. Java中math类的常用函数

    Java中math类的常用函数 在 Java 中 Math 类封装了常用的数学运算,提供了基本的数学操作,如指数.对数.平方根和三角函数等 只要在源文件的顶部加上下面这行代码就不必在数学方法名和常量名 ...

  2. java中Math类

    Math类 Math类是一个很有用的数学帮助类,使用也非常简单,这个类比较特殊,首先他和String类一样都是用final修饰,所以不能有子类,还有就是它的构造方法是私有的,也就是我们不能通过new的 ...

  3. Java中Math类的几个四舍五入方法的区别

    JAVA取整以及四舍五入 下面来介绍将小数值舍入为整数的几个方法:Math.ceil().Math.floor()和Math.round(). 这三个方法分别遵循下列舍入规则:Math.ceil()执 ...

  4. Java中Math类的常用方法

    public class MathDemo { public static void main(String args[]){ /** * abs求绝对值 */ System.out.println( ...

  5. Java中ArrayList类详解

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

  6. Java基础(四):Java Number & Math 类、Character 类、String 类、StringBuffer & StringBuilder 类

    一.Java Number & Math 类: 1.Number类: 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等.然而,在实际开发 ...

  7. Java-Runoob:Java Number & Math 类

    ylbtech-Java-Runoob:Java Number & Math 类 1.返回顶部 1. Java Number & Math 类 一般地,当需要使用数字的时候,我们通常使 ...

  8. Java之Math类使用小结(转发)

    Java的Math类封装了很多与数学有关的属性和方法,大致如下: public class Main { public static void main(String[] args) { // TOD ...

  9. java中大数类的学习

    java中提供了大数类BigInteger和BigDecimal分别表示大整数类和大浮点数类,这两个类都在java.math.*包中,因此每次必须在开头处引用该包. 一.BigInteger构造函数: ...

随机推荐

  1. 001_HTTP参数中Etag的重要性

    在研究tornado时,有个Etag比较好奇,从网上查询摘录如下:

  2. TFT1.44显示屏

    下载这个库 普通arduino的接口 链接 UTFT myGLCD(LPH9135,6,5,2,3,4); mega2560的接口连接 UTFT myGLCD(QD_TFT180A,A2,A1,A5, ...

  3. Centos7下用户登录失败N次后锁定用户禁止登陆的方法

    前言 针对linux上的用户,如果用户连续3次登录失败,就锁定该用户,几分钟后该用户再自动解锁.Linux有一个pam_tally2.so的PAM模块,来限定用户的登录失败次数,如果次数达到设置的阈值 ...

  4. day14(1)--递归、匿名函数、内置函数

    一.递归 定义:本质上是回溯和递推 回溯:询问答案的过程 递推:推出答案的过程 前提: 回溯到一个有结果的值开始递推 回溯与递推的条件要有规律 方式: 直接递归:自己调用自己 间接递归:通过别人来调用 ...

  5. 异常:NoNodeAvailableException

    现象 1.启动时候出现 node null not part of the cluster Cluster [********], ignoring... 2.启动时正常,但是请求时出现 NoNode ...

  6. windows下数据挖掘相关包numpy、pandas的安装

    安装Anaconda的绕道 这里介绍如何在windows下安装numpy/scipy/matplotlib/pandas/scikit_learn等数据分析相关包 相关环境: win7 64位 pyt ...

  7. Spring Boot 之日志记录

    Spring Boot 之日志记录 Spring Boot 支持集成 Java 世界主流的日志库. 如果对于 Java 日志库不熟悉,可以参考:细说 Java 主流日志工具库 关键词: log4j, ...

  8. Vue(四)之webpack和vue-cli

    01-webpack介绍 官方文档:https://www.webpackjs.com/concepts/ 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(modu ...

  9. Leetcode 101. Symmetric Tree(easy)

    Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For e ...

  10. H5 详情和概要标签

    38-详情和概要标签 概要信息 详情信息 --> 郑伊健 简介:郑伊健,1967年10月4日出生于中国香港,籍贯广东恩平,香港影视演员.流行男歌手.1988年参加新秀歌唱大赛加入无线电视,因拍摄 ...