但我们使用数据时,我们一般使用内置数据类型,列如:byte,int,long,double等,但是在实际开发过程中,我们一般遇到的是需要使用对象,这时,我们就可以使用 Java 专门为每一个数据类型提供的对应的包装类,并且所有的包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。

Java Math类
Java 的 Math 类封装了很多与数学有关的属性和方法并且 Math 的方法都被定义为static 形式,通过 Math 类可以在主函数中直接调用。

Number & Math 类方法
我们主要谈论一些该类常用的方法:
1、xxxValue()
xxxValue() 方法用于将 Number 对象转换为 xxx 数据类型的值并返回。列如:
当类型为 byte 时,byteValue(): 表示以 byte 形式返回指定的数值。
当类型为 abstract double 时候,doubleValue() : 以 double 形式返回指定的数值。以此类推。

但是,这些函数不接受任何的参数。

2、compareTo() 方法
compareTo() 方法用于将 Number 对象与方法的参数进行比较。可用于比较 Byte, Long, Integer等(只能对两个相同类型的进行比较,两个不同类型的数据不能用此方法)。

语法为:public int compareTo( NumberSubClass referenceName )

其中 referenceName 可以为 Byte, Double, Integer, Float, Long 或 Short 类型的任意参数。在指定的数等于参数时返回0、小于参数时返回-1、大于参数时返回1.

3、equals() 方法
equals() 方法用于判断 Number 对象与方法的参数进是否相等。

语法:public boolean equals(Object x)

其中 x 为任意对象,当 Number 对象不为 Null,且与方法的参数类型与数值都相等返回 True,否则返回 False。

4、valueOf() 方法
这是一个可以接收两个参数(一个是字符串,一个是基数)的静态方法,主要用于返回给定参数的原生 Number 对象值,参数可以是原生数据类型, String等。

语法:
static Integer valueOf(int i) (1)
static Integer valueOf(String s) (2)
static Integer valueOf(String s, int radix) (3)

其中 i = Integer 对象的整数,s = Integer 对象的字符串,radix = 在解析字符串,s 时使用的进制数,用于指定使用的进制数。

在案例中,代码(1)返回一个表示指定的 int 值的 Integer 实例。
代码(2)返回保存指定的 String 的值的 Integer 对象。
代码(3)返回一个 Integer 对象,该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值。

5、toString() 方法
toString() 方法用于返回以一个字符串表示的 Number 对象值,如果方法使用了原生的数据类型作为参数,返回原生数据类型的 String 对象值,如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。

6、parseInt() 方法
parseInt() 方法用于将字符串参数作为有符号的十进制整数进行解析、如果方法有两个参数, 使用第二个参数指定的基数,将字符串参数解析为有符号的整数。

语法:
static int parseInt(String s)
static int parseInt(String s, int radix)

其中参数为s = 十进制表示的字符串。radix = 指定的基数。
运行代码:parseInt(String s): 返回用十进制参数表示的整数值。
parseInt(int i): 使用指定基数的字符串参数表示的整数 (基数可以是 10, 2, 8, 或 16 等进制数) 。

7、abs()
abs() 方法返回参数的绝对值。参数可以是 int, float, long, double, short, byte类型。

语法为:
double abs(double d)
float abs(float f)
int abs(int i)
long abs(long lng)

8、ceil() 方法
是一个类型为双精度浮点型的方法,可对一个数进行上舍入,返回值大于或等于给定的参数。返还类型为double类型。

语法:
double ceil(double d)
double ceil(float f)

9、floor() 方法
floor() 方法可对一个数进行下舍入,返回给定参数最大的整数,该整数小于或等给定的参数。返回 double 类型数据,小于或等于给定的参数。

语法:
double floor(double d)
double floor(float f)

10、round() 方法
round 表示"四舍五入",算法为Math.floor(x+0.5) ,即将原来的数字加上 0.5 后再向下取整,所以 Math.round(11.5) 的结果为 12,Math.round(-11.5) 的结果为 -11。
round() 方法返回一个最接近的 int、long 型值,四舍五入。

语法:
long round(double d)
int round(float f)

其中d = double 或 float 的原生数据类型、f = float 原生数据类型。

该类方法大概有27种,这里就不每个介绍了,想了解更多可以去下面这个网址:
https://www.runoob.com/java/java-number.html

Java常见的类——Number和Math类的更多相关文章

  1. Java入门 - 语言基础 - 12.Number和Math类

    原文地址:http://www.work100.net/training/java-number-math.html 更多教程:光束云 - 免费课程 Number和Math类 序号 文内章节 视频 1 ...

  2. JAVA Number与Math类

    Number类: 当要用到数字的时候,我们除了使用内置数据类型byte,int,double等来声明,我们还把它声明为一个对象: 所有的包装类(Integer.Long.Byte.Double.Flo ...

  3. Java中的Number和Math类简单介绍

    Java Number类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等. 实例: int a = 5000; float b = 13.65 ...

  4. 《java入门第一季》之Math类一个小案例获取任意数值范围内随机数

    Math:用于数学运算的类. import java.util.Scanner; /* * 需求:请设计一个方法,可以实现获取任意范围内的随机数. * * 分析: * A:键盘录入两个数据. * in ...

  5. Number 和 Math 类

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

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

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

  7. Java基础知识强化81:Math类random()方法之获取任意范围的随机数案例(面试题)

    1. 需求:设计一个方法,可以实现获取任意范围内的随机数 分析:使用方法random()如下: public static double random() 注:Returns a pseudo-ran ...

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

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

  9. Java基础知识强化80:Math类random()方法的小扩展(控制产生目的数字的概率)

    1. Math.random()方法: Math.random()出现的数据是0.0<= x < 1.0之间,随机出现一个数据Math.random()>0.1概率是0.9 那么如下 ...

随机推荐

  1. python之time模块和hashlib模块

    一.time模块 import time print(time.strftime('%Y-%m-%d %H:%M:%S'))#获取当前的格式化时间,time.strftime(format) prin ...

  2. 让Spring不再难懂-mvc篇

    spring mvc简介与运行原理 Spring的模型-视图-控制器(MVC)框架是围绕一个DispatcherServlet来设计的,这个Servlet会把请求分发给各个处理器,并支持可配置的处理器 ...

  3. kafka运行找不到或无法加载主类 Files\Java\jdk1.8.0_131\lib\dt.jar;C:\Program

    最近在研究Flink+kafka解决方案, kafka的安装首先需要安装zookeeper,在安装zookeeper是报错找不到或无法加载主类 Files\Java\jdk1.8.0_131\lib\ ...

  4. SPA(单页面web应用)和MPA(多页面web应用)的区别

    转:https://blog.csdn.net/amaniz/article/details/79203562 vue多页面应用开发请参见: https://github.com/amunamuna/ ...

  5. 2017-2018 ACM-ICPC Pacific Northwest Regional Contest (Div. 2) P-Fear Factoring 区间内数的所有因数的和(除法分块)

    题意就是标题. 思路: 对于每个数 a 算出 1~a 的所有因数和sum(a),输出sum(b)-sum(a-1). 关键在于如何求出 sum. 首先发现因数∈ 1 ≤ i ≤ n ,每个因数在区间[ ...

  6. 吴裕雄--天生自然 R语言开发学习:聚类分析(续一)

    #-------------------------------------------------------# # R in Action (2nd ed): Chapter 16 # # Clu ...

  7. webgrind安装使用详细说明

    webgrind是一个网页版的性能分析工具,它的主要作用就是分析xdebug生成的cachegrind文件,以一种界面友好详尽的方式来展示性能数据.试用了一下感觉还是很不错的,鉴于网上并没有一个系统介 ...

  8. Ionic3学习笔记(六)存储之使用 SQLite

    本文为原创文章,转载请标明出处 目录 安装 CURD操作 1. 安装 命令行输入 ionic cordova plugin add cordova-sqlite-storage npm install ...

  9. 后端开发中,可以在Cache-Control设置的常用指令

    max-age 该指令指定从当前请求开始,允许获取的响应被重用的最长时间(单位为秒.例如:Cache-Control:max-age=60表示响应可以再缓存和重用 60 秒.需要注意的是,在max-a ...

  10. 使用Win10自带的虚拟机安装Linux

    Win10自带了一款虚拟机,感觉不错,可以试用一下: 安装:http://news.mydrivers.com/1/650/650018.htm 主要思路就是在BIOS里面开启CPU虚拟化,然后在Wi ...