9.4 包装类

我们学习过int、double、char等类型,例如下面的代码我们非常熟悉:
int i=1024;
double d=5.6;
char c='a';
我们把i、d、c这些称为变量,这些变量只有一个值,由于他们并不是什么类的对象,所以也就没有行为。为了统一面向对象体系,Java也为这些基本类型都设计了对应的类,这就是包装类。
变量类型
包装类
int
Integer
byte
Byte
short
Short
long
Long
double
Double
float
Float
char
Character
包装类可以和对应的类型无缝连接,自动转换,例如 Integer i=1024; double d=5.6; Double dou =d; 但是更重要的是这些包装类的一些静态方法,也就是类能直接引用的方法。
其中一个就是把字符串转换成数字这个函数,每个类型都有对应的字符串转换成本类型的函数。
包装类及静态方法
返回类型
Integer.parseInt(String str)
str转换的整数,如果str不是整数,那么出异常
Double.parseDouble(String str)
str转换的小数,如果str不是小数,那么出异常
Byte.parseByte(String str)
str转换的整数,如果str不是整数,那么出异常
Short.parseShort(String str)str转换的整数,如果str不是整数,那么出异常
Long.parseLong(String str)str转换的整数,如果str不是整数,那么出异常
Float.parseFloat(String str)
str转换的小数,如果str不是小数,那么出异常
Character.isDigit(char c)
c是数字字符,返回true,否则返回false
Character.isLetter(char c)c是字母字符,返回true,否则返回false
Character.isWhitespace(char c)
c是空格字符(包括空格、转行、tab字符),返回true
Character.isUpperCase(char c)
Character.isLowerCase(char c)
c是大写字母,返回true,否则返回false
c是小写字母,返回true,否则返回false
Character提供了很多函数,判断字符的类型,我们以前练习写的判断函数,Java已经实现了。
除此之外,包装类还提供了数据类型的最大和最小值,这两个是静态属性MAX_VALUE和MIN_VALUE,
public static void main(String[]args){
    System.out.println("int的最大值和最小值分别是:");
    System.out.println(Integer.MAX_VALUE);
    System.out.println(Integer.MIN_VALUE);
    System.out.println("long的最大值和最小值分别是:");
    System.out.println(Long.MAX_VALUE);
    System.out.println(Long.MIN_VALUE);
    System.out.println("double的最大值和最小值分别是:");
    System.out.println(Double.MAX_VALUE);
    System.out.println(Double.MIN_VALUE);
}
这将打印:
int的最大值和最小值分别是:
2147483647
-2147483648
long的最大值和最小值分别是:
9223372036854775807
-9223372036854775808
double的最大值和最小值分别是:
1.7976931348623157E308
4.9E-324