包装类
Java语言中,为了能够把基本数据类型当做对象处理,通过包装类将八个基本数据类型包装成类,并提供了多种方法供以调用。
Java中8个基本数据类型各自对应的包装类
Integer类:
1、 构造方法
Integer类有两种构造方法
Integer(int number)
.
以一个int型变量作为参数创建Integer对象。如:Integer number = new Integer(7);
Integer(String str)
.
以一个String型变量作为参数创建Integer对象。如:Integer number = new Integer(“45”);
注意:
若使用字符串型变量创建Integer对象,字符串变量的值必须是数值型的(如:“123”),否则会抛出NumberFormatException异常
2、 常用方法:
例:
package Usual_Class;
public class demo1 {
public static void main(String[] args) {
/* 比较数值大小与进制转换 */
int num = Integer.parseInt("128"); // 将字符串转换为int型
Integer iNum = Integer.valueOf("128"); // 通过构造函数创建一个Integer对象
System.out.println("int数据类型和Integer数据类型比较:" + iNum.equals(num));
String str1 = Integer.toBinaryString(num); // 将num转化为二进制
String str2 = Integer.toHexString(num);// 将num转化为十六进制
String str3 = Integer.toOctalString(num);// 将num转化为八进制
System.out.println(num + "的二进制表示为:" + str1);
System.out.println(num + "的十六进制表示为:" + str2);
System.out.println(num + "的八进制表示为:" + str3);
}
}
3、 常量 Integer类
提供了一下四个常量:
MAX_VALUE
:表示int类型可取的最大值,即2^31-1
MIN_VALUE
:表示int类型可取的最小值,即-2^31
SIZE
:用来以二进制补码形式表示int值的位数
TYPE
:表示基本类型int的Class实例
例:
package Usual_Class;
public class demo2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int maxInt = Integer.MAX_VALUE; // 获取Integer的最大值
int minInt = Integer.MIN_VALUE; // 获取Integer的最小值
int intSize = Integer.SIZE; // 获取Integer的二进制位数
System.out.println("Integer的最大值:" + maxInt);
System.out.println("Integer的最小值:" + minInt);
System.out.println("Integer的二进制位数:" + intSize);
}
}
Number类
:
Number类是一个抽象类,它是Byte类、Integer类、Short类、Long类、Float类和Double的父类
。
数值型包装类的方法:
Math类
:
Math类的概述:
Math表示数学类,由于Math中的数学方法都被定义为static形式。所以可以直接调用Math类中的方法和常量。
调用方法语法:
Math.数学方法
调用常量语法:
Math.PI //表示圆周率PI的值
Math.E //表示自然对数底数e的值
常用的属性运算方法
1、 指数函数方法
2、 取整函数
3、 取最大值、最小值、绝对值的方法
例:
package Usual_Class;
public class demo3 {
public static void main(String[] args) {
System.out.println("*************Math指数函数调用****************");
System.out.println("e的值为:" + Math.E);
System.out.println("e的平方:" + Math.exp(2));
System.out.println("以e为底,2的对数:" + Math.log(2));
System.out.println("以10为底,1000的对数:" + Math.log10(1000));
System.out.println("π的值为:" + Math.PI);
System.out.println("半径为5的圆的面积为:" + (Math.PI * (Math.pow(5, 2))));
System.out.println("正方体的体积为64的正方体的边长:" + Math.cbrt(64));
System.out.println("144的平方根为:" + Math.sqrt(144));
System.out.println("************Math取整函数调用****************");
System.out.println("e的值为:" + Math.ceil(Math.E));
System.out.println("e的平方:" + Math.floor(Math.exp(2)));
System.out.println("以e为底,2的对数:" + Math.rint(Math.log(2)));
System.out.println("以10为底,1000的对数:" + Math.log10(1000));
System.out.println("π的值为:" + Math.round(Math.PI));
System.out.println("半径为5的圆的面积为:" + Math.round((Math.PI * (Math.pow(5, 2)))));
System.out.println("正方体的体积为64的正方体的边长:" + Math.cbrt(64));
System.out.println("144的平方根为:" + Math.sqrt(144));
System.out.println("*************Math比较函数调用****************");
System.out.println("6和28的最大值为:" + Math.max(6, 8));
System.out.println("5.23和5.21的最小值为:" + Math.min(5.23, 5.21));
System.out.println("-520的绝对值为:" + Math.abs(-520));
}
}