java中的数学计算函数

Math类:java.lang.Math类中包含基本的数字操作,如指数、对数、平方根和三角函数。java.math是一个包,提供用于执行任意精度整数(BigInteger)算法和任意精度小数(BigDecimal)算法的类。

java.lang.Math类中包含E和PI两个静态常量,以及进行科学计算的类(static)方法,可以直接通过类名调用。

public static final Double E = 2.7182818284590452354public static final Double PI = 3.14159265358979323846

public static long abs(double x):传回 x 的绝对值。X也可int long floatpublic static long sin(double x): 传回x径度的正弦函数值public static long cos(double x):传回x径度的余弦函数值public static long tan(double x): 传回x径度的正切函数值public static long asin(double x):传回x值的反正弦函数值。public static long acos(double x):传回x值的反余弦函数值。public static long atan(double x):传回x值的反正切函数值。public static long atan2(double x, double y):传回极坐标(polar)的θ值public static long floor(double x):传回不大于x的最大整数值public static long ceil(double x):传回不小于x的最小整数值。public static long exp(double x):传回相当于ex值public static long log(double x):传回x的自然对数函数值public static long max(double x,double y):传回x、y较大数public static long min(double x,double y):传回x、y较小数public static long pow(double x,double y):传回x的y次幂值public static long sqrt(double x): 传回x开平方值public static long rint(double x):传回最接近x的整数值public static long round(double x):传回x的四舍五入值public static long toDegrees(double angrad):传回将angrad径度转换成角度public static long toRadians(double angdeg): 传回将angdeg角度转换成径度public static long random():传回随机数值,产生一个0-1之间的随机数(不包括0和1)

NumberFormat类:

(public abstract class NumberFormat extends Format)用java.text.NumberFormat类对输出的数字结果进行必要的格式化。

使用该类如下方法类实例化一个NumberFormat对象:public static final NumberFormat getInstance()然后用该对象调用如下方法可以格式化数字number(返回字符串对象):public final String format(double number)

NumberFormat类有如下常用方法:public void setMaximumFractionDigits(int newValue;public void setMaximumIntegerDigits(int newValue;public void setMinimumFractionDigits(int newValue;public void setMinimumIntegerDigits(int newValue;

(更多方法及用法看JDK6API参考。)

BigInteger类、BigDecimal类:

java.math包中的BigInteger类和BigDecimal类分别提供任意精度的整数和小数运算。两个类设计思想一样,这里只对BigInterger类稍做介绍,细节可以查看JDK6API参考。

构造方法如下:BigInteger(String val) �;还有很多考虑周全的构造函数,建议要准备写特殊需求的BigInteger前先认真翻下JDK。

常用方法:abs() �;add(BigInteger val) �;subtract(BigInteger val) �;multiply(BigInteger val) �;divide(BigInteger val) �;remainder(BigInteger val) �;compareTo(BigInteger val) �;pow(int exponent) �;toString() �;toString(int radix) �;补充:(1)abs():返回某数字的绝对值.参数可以是float、double、long或int。如果是byte或short类型,那么它们会被强制转换成int类型。(2)ceil()会找到下一个最大整数。例如参数为9.01时,返回10.0。为-0.1时,返回-0.0。返回比参数大的整数,而且都是双精度类型的。如果参数是整数,则该方法会返回这个参数的双精度型。(3)floor()返回紧邻的最小整数。作用与ceil()正好相反,返回的是比参数小的整数,而且都是双精度型。如果参数为整数,则返回这个参数的双精度型。(4)max()返回两个值中的最大值,只支持float double long int 不支持byte short。(5)min()返回两个值中的最小值,只支持float double long int 不支持byte short。(6)random()返回一个随机数,一个在0.0到1.0之间的双精度数。(7)round()返回与某浮点数值最接近的整数值。参数可以为double和folat两种,而且支持四舍五入。例如:参数为9.01时,返回9,参数为9.5时,返回10,参数为-9.5时,返回-9。(8)sqrt()返回某数值的平方根。如果该参数是"非数字"类型(NaN),或者小于零,则返回是NaN。/**

* 取m第n位的值是0还是1

* @param m

* @param n

* @return

*/

static int getBit(int m, int n) {

return (m >> n) & 0x01;

}

/**

* 设置m第n位的值v

* @param m 32们的整型

* @param n 偏移0~31

* @param v 0和非0

* @return 返回更新之后的值

*/

public static int setBit(int m, int n, int v) {

if (v >= 1)

return (1 << n) | m;

else

return ((1 << n) ^ Integer.MAX_VALUE) & m;

}点于点之间的夹角和距离public static float getRotation(float x1, float y1, float x2, float y2) {

float value = (float) Math.toDegrees(Math.atan2(y2 - y1, x2 - x1));

return value;

}

public static float p2pDistance(float x1, float y1, float x2, float y2) {

return (float) Math.sqrt((y2 - y1) * (y2 - y1) + (x2 - x1) * (x2 - x1));

}

收藏0

收藏的用户(0)X

正在加载信息~

java数值运算divide_Java常用的计算机数字运算函数相关推荐

  1. java 常用类 - 大数据运算

    java 常用类 - 大数据运算 在 Java中提供了用于大数字运算的类,即 java.math.BigInteger 类和 java.math.BigDecimal 类.这两个类用于高精度计算,其中 ...

  2. Java大数字运算(BigInteger类和BigDecimal类)

    Java中的超大数BIgInteger和BigDecimal 在我们处理大位数运算的时候,我们经常用的int和long类型的数已经不能够满足我们的运算了,那么这个时候就需要用到一个超大数来运算,这个时 ...

  3. java 数字运算异常_Java基础之:异常及异常处理

    Java基础之:异常及异常处理 我们将java程序执行过程中出现的不正常现象称为异常,例如:之前遇到的数组下标越界异常,空指针异常等等 执行过程中发生的异常事件分为两类: Error(错误):Java ...

  4. Java快速入门到精通—大数字运算(BigDecimal 类)

    在Java中提供了用于大数字运算的类,即 java.math.BigInteger 类和 java.math.BigDecimal 类.这两个类用于高精度计算,其中BigInteger 类是针对整型大 ...

  5. 计算机的简史:从数字运算到强大的现代机器

    计算机的历史始于 19 世纪初的原始设计,并在 20 世纪继续改变世界. 计算机的历史可以追溯到 200 多年前.最初由数学家和企业家提出的理论,在 19 世纪,机械计算机的设计和制造是为了解决日益复 ...

  6. 计算机三级分类汇总,计算机三级网络考试机试100道分类汇总-整数各位数字运算排序统计.doc...

    计算机三级网络考试机试100道分类汇总-整数各位数字运算排序统计.doc (7页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 ☆ 题目2 ...

  7. java dsp_GitHub - Onemeaning/JavaDsp: 数字信号处理(DSP)方面的Java封装,包含常用的一些处理方法,如滤波、信号变换等等。...

    JavaDsp 数字信号处理(DSP)方面的Java封装,包含常用的一些处理方法,如滤波.信号变换等等. 该类库是我本科毕业设计中的一部分,绝大部分都是我自己写实现的,很少部分算法有我另外几个朋友参与 ...

  8. java 数值计算_常用的java数值计算方法

    少年易学老难成,一寸光阴不可轻 - 百度文库 1 常用Java 数值计算方法 在Java 系统提供的Math 类中包含了一些数值常量,如E 和PI ,以及一些的数值计算方法,如求指数.求对数.开平方根 ...

  9. java计算机数字逻辑在线学习系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署

    java计算机数字逻辑在线学习系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 java计算机数字逻辑在线学习系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署 本源码技 ...

最新文章

  1. 我的Java开发学习之旅------JAVA 笔记ClassLoader.getResourceAsStream() 与 Class.getResourceAsStream()的区别...
  2. Python之旅.第四章.模块与包
  3. Python Web实时消息后台服务器推送技术---GoEasy
  4. qt char*转int_Qt在Linux下绘制文字原理-使用FreeType来绘制字形
  5. mysql MHA 集群搭建
  6. iOS5 UIKit新特性
  7. [蓝桥杯历届试题] 汉诺塔计数
  8. java 实现word转txt
  9. 使用 flowplayer 播放视频
  10. 从零开始的计网学习——计算机网络概述(计网入门就看这篇!)
  11. iOS-发布按钮动画(类似于闲鱼发布),弹出动画github开源
  12. java读取apk、ipa包名、版本名、版本号等信息
  13. pikachu~~~CSRF(get,post,token)
  14. 关于预答辩研究生汇报内容及方式的几点要求
  15. 详解keras中的Mask机制
  16. 美标C70600(BFe10-1-1)无缝管
  17. 【索引】Chapter 1. Algorithm Design
  18. java的就近原则啥意思_java就近原则浅析
  19. 用友出纳通服务器修改系统日期,用友T3软件出纳通里面如何修改账户的建账日...
  20. VMware12里使用U盘进行WIN10安装

热门文章

  1. 各省投入产出表数据(2002、2007、2012)
  2. 项目实训-关键词提取-论文研读-load centrality的合理性探讨
  3. Bug[5] 多路连接客户服务器,发送一路数据时,其他几路自动断开,查询PDP显示未被激活
  4. 断带抓捕器 DDZ型带式输送机断带抓捕器 DDZ35/100抓捕器
  5. 看流行韩剧 简单学韩语
  6. java.io.CharConversionException: isHexDigit JS转码问题
  7. 苹果A5X和英伟达Tegra 3:性能测试对比
  8. python录制鼠标动作_python之模拟鼠标键盘动作具体实现
  9. 上千数据指标,如何1周开发完?
  10. Access2002-2003数据库合并工具