您的位置 首页 java

Java中的Number和Math类

Java中的 Number 和Math类


Java 8种基本数据类型分别对应其包装类:

byte——Byte

Short ——Short

int——Integer

Long ——Long

char——Character

float ——Float

double——Double

boolean——Boolean

而Integer、Long、Byte、Double、Float、Short这6个又是抽象类Number的子类。

Math类的方法进行基本的数字操作,如基本的指数,对数,平方根和三角函数等.。

Math的方法都是static形式。

一、自动装箱与自动拆箱:

自动装箱是将基本数据类型自动转换为包装器类型;

拆箱是将包装器类型自动转换为基本数据类型

1.自动装箱:

2.自动拆箱:

Integer a = 10;

int b = a;或int b = a.intValue();

二、Number和Math类主要方法:

下面的方法中type支持:byte、short、int、long、float、double

1.typeValue()

将Number对象转换为type数据类型的值并返回。

Integer a = 10;

System.out.println(a.intValue());

2.compareTo(type a)

将Number对象与参数a进行比较,Number对象与参数必须是相同数据类型。

如果指定的数与参数相等返回0。

如果指定的数小于参数返回-1。

如果指定的数大于参数返回1。

Integer a = 10;

System.out.println(a.compareTo(3));

3.equals(Object o)

判断Number对象是否与参数相等,参数o可以是任何对象

如果Number对象不为null,且与参数o类型与数值都相等返回true,否则返回false。

Integer a = 1;

Integer b = 3;

System.out.println(a.equals(b));

4.valueOf()

返回给定参数的原生Number对象值。

参数可以是一个参数或两个参数:

一个参数时,参数数据类型可以是基本数据类型, String等;

两个参数时,一个是 字符串 ,一个是基数(指定解析字符串时使用的 进制 数)。

语法:

Type valueOf(type i)

Type valueOf(String s, int radix)

例子:

Integer a =Integer.valueOf(10);

Integer b = Integer.valueOf(“456″,16); // 使用16进制解析字符串”456”

System.out.println(a);

System.out.println(b);

5. toString ()

返回以一个字符串表示的Number对象值。

可以无参或一个指定类型的参数:

无参时返回原数据类型的字符串表示形式;

有参时,返回指定类型数据的字符串表示形式。

Integer a = 10;

System.out.println(a.toString());

System.out.println(Integer.toString(20));

6.parseType()

将字符串参数作为十进制整数进行解析。

可以一个参数或两个参数:

如果有两个参数,使用第二个参数指定的基数,将字符串参数解析为相应类型的数字(基数可以是10,2,8或16 等进制数)。

语法:

type parseType(String s)

type parseType(String s, int radix)

例子:

int a =Integer.parseInt(“5”);

double b = Double.parseDouble(“5”);

int c = Integer.parseInt(“456″,16); // 使用16进制解析字符串”456”

System.out.println(a);

System.out.println(b);

System.out.println(c);

7.abs(type i)

返回参数i的绝对值。

Integer a = -10;

System.out.println(Math.abs(a));

输出结果:10

8.ceil()

对一个数进行上 舍入 ,返回值大于或等于给定的参数,返回类型为double型。

9.floor()

对一个数进行下舍入,返回给定参数最大的整数,该整数小于或等给定的参数,返回类型为double类型。

double a = 100.68;

float b = -90;

System.out.println(Math.ceil(a));

System.out.println(Math.ceil(b));

System.out.println(Math.floor(a));

System.out.println(Math.floor(b));

输出结果:

100.0

-90.0

101.0

-90.0

10.rint()

返回最接近参数的整数值。返回类型为double。

double a = 100.681;

double b = 100.500;

double c = 100.201;

System.out.println(Math.rint(a));

System.out.println(Math.rint(b));

System.out.println(Math.rint(c));

输出结果:

101.0

100.0

100.0

11.round()

返回一个最接近的int、long型值(四舍五入)。

double a = 100.687;

double b = 100.500;

System.out.println(Math.round(a));

System.out.println(Math.round(b));

输出结果:

101

101

12.min()

返回两个参数中的最小值。

System.out.println(Math.min(23.1, 23.0));

输出结果:23.0

13.max()

返回两个参数中的最大值。

14.random()

返回一个随机数,此随机数 >= 0.0 ,< 1.0。

System.out.println( Math.random() );

输出结果:0.02909671613289655

三、还有其他取正弦值、余弦值、角度等数学方法,此处不再说明,想进一步学习的话可自行查阅其他资料。

文章来源:智云一二三科技

文章标题:Java中的Number和Math类

文章地址:https://www.zhihuclub.com/189005.shtml

关于作者: 智云科技

热门文章

网站地图