JAVA Number与Math类
Posted s1mplesama
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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类在主函数直接调用。
1 System.out.println("90 度的正弦值:" + Math.sin(Math.PI/2)); 2 System.out.println("0度的余弦值:" + Math.cos(0)); 3 System.out.println("60度的正切值:" + Math.tan(Math.PI/3)); 4 System.out.println("1的反正切值: " + Math.atan(1)); 5 System.out.println("π/2的角度值:" + Math.toDegrees(Math.PI/2)); 6 System.out.println(Math.PI);
Number类与Math类的方法:
1.intValue():(其他类型同理)
以int形式返回
1 Integer x = 5; 2 // 返回 byte 原生数据类型 3 System.out.println( x.byteValue() ); 4 5 // 返回 double 原生数据类型 6 System.out.println(x.doubleValue()); 7 8 // 返回 long 原生数据类型 9 System.out.println( x.longValue() );
2.compareTo(referenceName): referenceName -- 可以是一个 Byte, Double, Integer, Float, Long 或 Short 类型的参数。
比较该数与给定参数的大小:
如果小于参数返回-1;
等于返回0;
大于返回1;
1 Integer x = 5; 2 System.out.println(x.compareTo(3));
3.equals(o): o--任何对象
判断该对象与参数对象的类型和数值是否相等:
都相等返回True;
不相等返回false;
1 Integer x = 5; 2 Integer y = 10; 3 Integer z =5; 4 Short a = 5; 5 6 System.out.println(x.equals(y)); 7 System.out.println(x.equals(z)); 8 System.out.println(x.equals(a));
4.valueof():静态方法,三种重载,返回一个number对象
1 static Integer valueOf(int i) 2 static Integer valueOf(String s) 3 static Integer valueOf(String s, int radix) //radix为返回的进制
1 Integer x =Integer.valueOf(9); 2 Double c = Double.valueOf(5); 3 Float a = Float.valueOf("80"); 4 Integer b = Integer.valueOf("444",16); // 使用 16 进制
5.toString():返回一个字符串表示的number值,两种格式:
如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。
1 String toString() 2 static String toString(int i)
1 Integer x = 5; 2 3 System.out.println(x.toString()); 4 System.out.println(Integer.toString(12));
6.parseInt():将字符串参数作为有符号的十进制整数进行解析
1 static int parseInt(String s) 2 3 static int parseInt(String s, int radix)
1 int x =Integer.parseInt("9"); 2 double c = Double.parseDouble("5"); 3 int b = Integer.parseInt("444",16);
7.abs():返回绝对值
1 Integer a = -8; 2 double d = -100; 3 float f = -90; 4 5 System.out.println(Math.abs(a)); 6 System.out.println(Math.abs(d)); 7 System.out.println(Math.abs(f));
8.ceil():向上取整 9.floor():向下取整 参数:double或者float 返回值:保留小数点后一位
1 double d = 100.675; 2 float f = -90; 3 4 System.out.println(Math.ceil(d)); 5 System.out.println(Math.ceil(f)); 6 7 System.out.println(Math.floor(d)); 8 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次方
以上是关于JAVA Number与Math类的主要内容,如果未能解决你的问题,请参考以下文章