JAVA Number与Math类
Number类:
当要用到数字的时候,我们除了使用内置数据类型byte,int,double等来声明,我们还把它声明为一个对象;
所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类;
当被声明为对象时,编译器会把该类型装箱为包装类,运算时再拆箱为内置类型;
Number 类属于 java.lang 包。
Integer x = 5;
x = x + 10;
当 x 被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。然后,为了使x能进行运算,所以要对x进行拆箱。
Math类:
math类定义了基本数学运算的属性和方法,所有方法都为static,可以通过math类在主函数直接调用。
System.out.println("90 度的正弦值:" + Math.sin(Math.PI/2));
System.out.println("0度的余弦值:" + Math.cos(0));
System.out.println("60度的正切值:" + Math.tan(Math.PI/3));
System.out.println("1的反正切值: " + Math.atan(1));
System.out.println("π/2的角度值:" + Math.toDegrees(Math.PI/2));
System.out.println(Math.PI);
Number类与Math类的方法:
1.intValue():(其他类型同理)
以int形式返回
Integer x = 5;
// 返回 byte 原生数据类型
System.out.println( x.byteValue() ); // 返回 double 原生数据类型
System.out.println(x.doubleValue()); // 返回 long 原生数据类型
System.out.println( x.longValue() );
2.compareTo(referenceName): referenceName -- 可以是一个 Byte, Double, Integer, Float, Long 或 Short 类型的参数。
比较该数与给定参数的大小:
如果小于参数返回-1;
等于返回0;
大于返回1;
Integer x = 5;
System.out.println(x.compareTo(3));
3.equals(o): o--任何对象
判断该对象与参数对象的类型和数值是否相等:
都相等返回True;
不相等返回false;
Integer x = 5;
Integer y = 10;
Integer z =5;
Short a = 5; System.out.println(x.equals(y));
System.out.println(x.equals(z));
System.out.println(x.equals(a));
4.valueof():静态方法,三种重载,返回一个number对象
static Integer valueOf(int i)
static Integer valueOf(String s)
static Integer valueOf(String s, int radix) //radix为返回的进制
Integer x =Integer.valueOf(9);
Double c = Double.valueOf(5);
Float a = Float.valueOf("80");
Integer b = Integer.valueOf("444",16); // 使用 16 进制
5.toString():返回一个字符串表示的number值,两种格式:
如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。
String toString()
static String toString(int i)
Integer x = 5; System.out.println(x.toString());
System.out.println(Integer.toString(12));
6.parseInt():将字符串参数作为有符号的十进制整数进行解析
static int parseInt(String s) static int parseInt(String s, int radix)
int x =Integer.parseInt("9");
double c = Double.parseDouble("5");
int b = Integer.parseInt("444",16);
7.abs():返回绝对值
Integer a = -8;
double d = -100;
float f = -90; System.out.println(Math.abs(a));
System.out.println(Math.abs(d));
System.out.println(Math.abs(f));
8.ceil():向上取整 9.floor():向下取整 参数:double或者float 返回值:保留小数点后一位
double d = 100.675;
float f = -90; System.out.println(Math.ceil(d));
System.out.println(Math.ceil(f)); System.out.println(Math.floor(d));
System.out.println(Math.floor(f));
9.rint(double):返回与参数最近的整数,保留一位小数
10.round():四舍五入,返回一个整数,算法为floor(x+0.5)
11.min 12.max 返回两个参数中的最小,最大值
13.exp(d):返回e的d次方
double exp(double d)
14.log(d):返回以e为底的d的对数
15.pow(a,b):返回a的b次方
16.random():返回一个[0,1)的随机数
JAVA Number与Math类的更多相关文章
- Java入门 - 语言基础 - 12.Number和Math类
原文地址:http://www.work100.net/training/java-number-math.html 更多教程:光束云 - 免费课程 Number和Math类 序号 文内章节 视频 1 ...
- 带有静态方法的类(java中的math类)
带有静态方法的类通常(虽然不一定是这样)不打算被初始化. 可以用私有构造函数来限制非抽象类被初始化. 例如,java中的math类.它让构造函数标记为私有,所以你无法创建Math的实例.但Math类却 ...
- Java数学函数Math类
Java数学函数Math类常用: Math.abs(12.3); //12.3 返回这个数的绝对值 Math.abs(-12.3); //12.3 Math.copySign(1.23, -12.3) ...
- Java常用API(Math类)
Java常用API(Math类) Math类的作用 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且 ...
- 6.算法竞赛中的常用JAVA API :Math类(转载)
6.算法竞赛中的常用JAVA API :Math类 求最值 最小值 Math.min(int a, int b) Math.min(float a, float b) Math.min(double ...
- Java中的Number和Math类简单介绍
Java Number类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等. 实例: int a = 5000; float b = 13.65 ...
- Java常见的类——Number和Math类
但我们使用数据时,我们一般使用内置数据类型,列如:byte,int,long,double等,但是在实际开发过程中,我们一般遇到的是需要使用对象,这时,我们就可以使用 Java 专门为每一个数据类型提 ...
- Number 和 Math 类
Java Number & Math 类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等. 然而,在实际开发过程中,我们经常会遇到需要 ...
- Java 常用对象-Math类
2017-11-02 21:26:18 Math类:Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. *属性摘要 *常用方法 random() : 返回[0.0,1.0 ...
随机推荐
- 【SSL Certificates】什么是数字证书(Certificates)?
本文涉及的相关问题,如果你的问题或需求有与下面所述相似之处,请阅读本文 ssl certificate 什么是ssl certificates? SSL Certificates 是一种使用数字加密技 ...
- 找出 Xcode 编译C/C++过程文件及生成文件
在使用 Xcode 编写C/C++时,会发现在项目的目录位置是没有编译过程的那些 .o .exe 文件,只有一个 C/C++ 源代码 .c 文件.如下图(在Mac OS的finder中右键窗口标题名称 ...
- Notepad++的Json格式化插件
安装 :1.下载插件压缩包并解压出dll:Jsonviewer2.dll(64位)或NPPJSONViewer.dll(32位); 2..拷贝对应dll到Notepad++安装目录下的plugins ...
- Docker Swarm集群中部署Traefik负载均衡器
一.创建单节点的Docker Swarm集群 docker swarm init 二.在Swarm集群中创建一个网络 docker network create --driver=overlay tr ...
- [Linux]ubuntu安装基本流程
ubuntu安装基本流程 1.设置分辨率2.设置语言环境3.设置服务器镜像源4.添加终端5.apt.apt-get更新和升级系统软件 sudo apt update/upgrade sudo apt- ...
- selenium 模拟拖动滚动条下拉
senium做自动化测试的过程中,有的页面需要下拉滚动条才能全部加载完成,否则加载不出来就定位不到想要的元素. 参考链接:http://www.cnblogs.com/landhu/p/5761794 ...
- 记录一下小程序canvas
小程序canvas学习 效果图: .wxml <canvas style="width: 100vw; height: 100vh;" canvas-id="fir ...
- 将本地文件上传到GitHub
首先,可参见廖雪峰老师的官方网站进行Git安装:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c ...
- 『高性能模型』卷积复杂度以及Inception系列
转载自知乎:卷积神经网络的复杂度分析 之前的Inception学习博客: 『TensorFlow』读书笔记_Inception_V3_上 『TensorFlow』读书笔记_Inception_V3_下 ...
- redis 持久化文章分析的很到位
https://baijiahao.baidu.com/s?id=1611955931705092609&wfr=spider&for=pc