在实际编程中,大量的数据运算是不可避免的。在Java类库中,已经实现了一个Math类,提供了大部分的数据运算方法。
Math类中定义了多个实现标准数学函数功能的基本方法,包括三角函数、指数运算、对数运算、平方根运算等。
Math类中的所有成员方法都是静态的(static),可以直接使用“类名.方法”的形式调用。事实上,Math类的构造方法被定义为private的,因而根本不允许在类的外部创建Math类的对象。另外,Math类是final的,不能被继承。
Math类的常用属性和方法如下:
1 提供数据截断(truncation)操作功能
double ceil(double?a)
功能:向上取整,返回不小于a的最小整数
double floor(double?a)
功能:向下取整,返回不大于a的最大整数
int round(float?a) 或 public static long round(double?a)
功能:四舍五入,返回a的近似整数值
2 取最大、最小及绝对值功能
max()
功能:它接受两个数字类型的参数,返回两个数中较大的那个
min()
功能:它接受两个数字类型的参数,返回两个数中较小的那个
abs()
功能:接受一个数字类型数据,返回它的绝对值
3 三角函数功能
sin(), cos(), tan(), asin(), acos(), atan(), toDegrees(), toRadians():有关角度计算的方法,这些方法名和数学公式中的方法名一致。
4 对数及幂运算功能
double log(double?a)
功能:返回参数a的自然对数。其中,a的值必须大于0.0
double exp(double?a)
功能:返回e的a次幂
double pow(double?a,double?b)
功能:返回a的b次幂
5 产生随机数功能
double random()
功能:生成并返回一个[0.0,1.0]之间的随机数
6 数学常量
public static final double PI----圆周率,数值约为3.1415926
public static final double E----自然对数的底,数值约为2.718281828
下面我们来看一个Math类的使用例子。
public class TestMath{
public static void main(String[] args){
//得到一个随机数
double d = Math.random();
System.out.println(d);
//计算半径为10的圆的周长
double p = 2*Math.PI*10;
System.out.println(p);
}
}
这个程序调用Math中的一个静态方法random()来生成一个随机数,它将返回一个0~1之间的double类型的数据。并且,利用这个Math类的静态常量PI,来计算一个半径为10的圆的周长。
运行这个程序,将向控制台打印出如下信息:
0.6635153168266983
62.83185307179586
分享到:
相关推荐
- **math和statistics模块**:增加了更多数学函数和统计方法,比如`math.isclose()`用于比较浮点数的近似相等,`statistics`模块则提供了基本的统计计算。 5. **标准库扩展**: - **pathlib模块**:提供了一套...
匿名内部类的主要用途是创建一个仅使用一次的简短类定义,通常是在实现监听器接口时使用。 #### 3. Static Nested Class 和 Inner Class 的区别 - **Inner Class**:非静态内部类(也称为成员内部类),它可以访问...
使用dpkg命令或APT(Advanced Package Tool)工具可以方便地安装、升级和卸载这类软件包。.deb包包含软件的二进制文件、依赖关系信息和其他资源。 6. **安装和管理**: 在Linux上,用户可以通过命令行或者图形界面...
《使用汇编语言解决Project Euler问题的探索》 在IT领域,编程挑战是提升技能、锻炼思维的重要方式,其中Project Euler以其独特的数学与计算机科学相结合的特性,深受程序员喜爱。本项目聚焦于"Project Euler",它...
12.4 java.lang.Math类 172 12.5 java.Math.BigInteger类 174 12.6 java.Math.BigDecimal类 176 12.7 巩固练习 177 第13章 Java输入与输出(I/O) 179 13.1 File类 179 13.2 流(stream) 182 13.2.1 ...
Descriptors是Python语言中的一种特性,它们是实现了`__get__`, `__set__`, 或 `__delete__`方法的类,这些方法控制了对象属性的访问。Advanced Descriptors则通常是指那些具有更复杂行为的Descriptors,例如可以...
1.1 我如何决定使用那种整数类型? . . . . . . . . . . . . . . . . . . . 1 1.2 64 位机上的64 位类型是什么样的? . . . . . . . . . . . . . . . . 1 1.3 怎样定义和声明全局变量和函数最好? . . . . . . . . ....
描述符是实现了`__get__`, `__set__`, 或 `__delete__`方法的对象,它们可以控制类属性的行为。 "cp34-cp34m"这部分是Python的兼容性标识,意味着这个软件包是为Python 3.4编译的,并且使用了"cp34m"的ABI(应用...
1. **Linux**: Linux是一种自由和开放源码的类UNIX操作系统内核,广泛用于服务器和桌面环境。Linux发行版如Ubuntu、Debian、Fedora等都使用这种操作系统。这个压缩包是为Linux用户设计的,特别是那些使用基于Debian...
教育部高等学校计算机类专业教学指导委员会推荐教材 面向“工程教育认证”计算机系列课程规划教材 谢从华,高蕴梅,黄晓华.Web系统与技术[M],清华大学出版社,2018年6月 第1章 Web系统与技术的基础知识... 1 1.1 ...
- 86-XX:地球科学 - 90-XX:运筹学、控制论和优化 - 91-XX:博弈论、经济学、社会和行为科学 - 92-XX:生物科学 - 93-XX:系统科学和控制论 - 94-XX:信息和通信,编码理论 - 97-XX:数学在其它科学中的应用 每一...
1. **Direct3D API**: 这是一个面向对象的API,提供了一系列的类和函数,用于创建和管理3D场景,包括几何形状、光照、纹理、渲染状态等。通过这些接口,开发者可以实现复杂的3D动画和视觉效果。 2. **硬件加速**: ...
84. math - 数学节点,用于执行各种数学运算。 85. matnet - 材质网络节点,用于操作材质属性。 86. merge - 合并节点,用于合并多个数据流。 87. midiin - MIDI输入节点,用于处理MIDI输入数据。 88. (此处信息不...
3.10 常用数学工具包——java.lang.Math类 39 3.10.1 数学常量 39 3.10.2 常用数学函数 40 3.11 小结 41 第4章 流程控制——Java世界的航行舵手 42 4.1 if条件语句 42 4.1.1 简略形式 42 4.1.2 完全...
double[] coefficients = {76.18009173, -86.50532033, 24.01409822, -1.231739516, 0.120858003e-2, -0.536382e-5}; double StirlingError = 1.0 / (12 * x) - 1.0 / (360 * x * x * x) + 1.0 / (1260 * x * x * ...
Dart语言提供了强大的数学库`dart:math`,包含如平方根、随机数生成等功能。 6. **Widget辅助类**: Flutter的核心是Widget,它是构建UI的基本单元。`common_utils`库可能包含了一些辅助Widget,如自定义的布局、...
6. libreoffice5.1-math-5.1.3.2-2.x86_64.rpm:LibreOffice Math的安装包,用于创建和编辑数学公式和符号。 在Linux环境中安装这些RPM包,通常需要使用包管理器如yum或dnf,或者通过命令行工具rpm直接安装。安装...
5. **旧式类和新式类**:Python 2区分旧式类和新式类,而Python 3中所有类都是新式类,简化了面向对象编程。 在下载的压缩包"python-3.6.4 32bit.exe"中,包含了32位版本的Python 3.6.4可执行安装程序。安装此版本...
在SpringBoot项目中,我们...在处理数据时,使用`ExcelFormatUtil`工具类能有效地处理各种单元格数据格式,确保数据处理的准确性和一致性。同时,要注意文件上传的安全性,如检查文件类型和大小,以防止恶意文件上传。