您的位置 首页 java

Java入门教程六(内置包装类)

Java 是一种面向对象的编程语言,Java 中的类把方法与数据类型连接在一起,构成了自包含式的处理单元。但在 Java 中不能定义基本类型对象,为了能将基本类型视为对象处理,并能连接相关方法,Java 为每个基本类型都提供了包装类,如 int 型数值的包装类 Integer, boolean 型数值的包装类 Boolean 等。这样便可以把这些基本类型转换为对象来处理了。

Object类

Object 是 Java 类库中的一个特殊类,也是所有类的父类。当一个类被定义后,如果没有指定继承的父类,那么默认父类就是 Object 类

public class MyClass{…} 
//与下面的写法是相等的,因为所有类默认继承了Object类
public class My Class  extends Object {…}
 

Java 中的所有类都是由 Object 类派生出来的,因此在 Object 类中定义的方法,在其他类中都可以使用,equals() 方法和 getClass() 方法在 Java 程序中比较常用

Object clone()//创建与该对象的类相同的新对象
boolean equals(Object)//比较两对象是否相等
void finalize()//当垃圾回收器确定不存在对该对象的更多引用时,对象的圾回收器调用该方法
Class getClass()//返回一个对象运行时的实例类
int hashCode()//返回该对象的散列码值
void notify()//激活等待在该对象的监视器上的一个线程
void notifyAll()//激活等待在该对象的监视器上的全部线程
String toString()//返回该对象的 字符串 表示
void wait()//在其他线程调用此对象的 notify() 方法或 notifyAll() 方法前,导致当前线程等待
 

Integer类

Integer 类在对象中包装了一个基本类型 int 的值。Integer 类对象包含一个 int 类型的字段。此外,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法

Integer 类的 构造方法

Integer 类中的构造方法有以下两个。

Integer(int value):构造一个新分配的 Integer 对象,它表示指定的 int 值。

Integer(String s):构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值

Integer integer1=new Integer(100); //以 int 型变量作为参数创建 Integer 对象
Integer integer2=new Integer("100"); //以 String 型变量作为参数创建 Integer 对象
 

Integer 类的常用方法

 byte Value()byte以 byte 类型返回该 Integer 的值
 short Value()short以 short 类型返回该 Integer 的值
intValue()int以 int 类型返回该 Integer 的值
 toString ()String返回一个表示该 Intege r值的 String 对象
equals(Object obj)boolean比较此对象与指定对象是否相等
compareTo(Integer
anotherlnteger)int在数字上比较两个 Integer 对象,如相等,则返回 0;
如调用对象的数值小于 anotherlnteger 的数值,则返回负值;
如调用对象的数值大于 anotherlnteger 的数值,则返回正值
valueOf(String s)Integer返回保存指定的 String 值的 Integer 对象
parseInt(String s)int将数字字符串转换为 int 数值
 

Integer 类的常量

Integer 类包含以下 4 个常量。

MAX_VALUE:值为 231-1 的常量,它表示 int 类型能够表示的最大值。

MIN_VALUE:值为 -231 的常量,它表示 int 类型能够表示的最小值。

SIZE:用来以 二进制补码 形式表示 int 值的比特位数。

TYPE:表示基本类型 int 的 Class 实例。

int max_value=Integer.MAX_VALUE; //获取 int 类型可取的最大值
int min_value=Integer.MIN_VALUE; // 获取 int 类型可取的最小值
int size=Integer.SIZE; // 获取 int 类型的二进制位
Class c=Integer.TYPE; // 获取基本类型 int 的 Class 实例
 

Float

Float 类在对象中包装了一个基本类型 float 的值。Float 类对象包含一个 float 类型的字段。此外,该类提供了多个方法,能在 float 类型与 String 类型之间互相转换,同时还提供了处理 float 类型时比较常用的常量和方法

Float 类的构造方法

Float 类中的构造方法有以下 3 个。

Float( Double value):构造一个新分配的 Float 对象,它表示转换为 float 类型的参数。

Float(float value):构造一个新分配的 Float 对象,它表示基本的 float 参数。

Float(String s):构造一个新分配的 Float 对象,它表示 String 参数所指示的 float 值。

Float float1=new Float(3.14145); //以 double 类型的变量作为参数创建 Float 对象
Float float2=new Float(6.5); //以 float 类型的变量作为参数创建 Float 对象
Float float3=new Float("3.1415"); //以 String 类型的变量作为参数创建 Float 对象
 

Float 类内部包含了一些和 float 操作有关的方法

byteValue()byte以 byte 类型返回该 Float 的值
doubleValue()double以 double 类型返回该 Float 的值
floatValue()float以 float 类型返回该 Float 的值
intValue()int以 int 类型返回该 Float 的值(强制转换为 int 类型)
 long Value()long以 long 类型返回该 Float 的值(强制转换为 long 类型)
shortValue()short以 short 类型返回该 Float 的值(强制转换为 short 类型)
isNaN()boolean如果此 Float 值是一个非数字值,则返回 true,否则返回 false
isNaN(float v)boolean如果指定的参数是一个非数字值,则返回 true,否则返回 false
toString()String返回一个表示该 Float 值的 String 对象
valueOf(String s)Float返回保存指定的 String 值的 Float 对象
parseFloat(String s)float将数字字符串转换为 float 数值
 

Float 类的常用常量

在 Float 类中包含了很多常量,其中较为常用的常量如下。

MAX_VALUE:值为 1.4E38 的常量,它表示 float 类型能够表示的最大值。

MIN_VALUE:值为 3.4E-45 的常量,它表示 float 类型能够表示的最小值。

MAX_EXPONENT:有限 float 变量可能具有的最大指数。

MIN_EXPONENT:标准化 float 变量可能具有的最小指数。

MIN_NORMAL:保存 float 类型数值的最小标准值的常量,即 2-126。

NaN:保存 float 类型的非数字值的常量。

SIZE:用来以二进制补码形式表示 float 值的比特位数。

TYPE:表示基本类型 float 的 Class 实例

float max_value=Float.MAX_VALUE; //获取 float 类型可取的最大值
float min_value=Float.MIN_VALUE; //获取 float 类型可取的最小值
float min_normal=Float.MIN_NORMAL; //获取 float 类型可取的最小标准值
float size=Float.SIZE; //获取 float 类型的二进制位
 

Double类

Double 类在对象中包装了一个基本类型 double 的值。Double 类对象包含一个 double 类型的字段。此外,该类还提供了多个方法,可以将 double 类型与 String 类型相互转换,同时 还提供了处理 double 类型时比较常用的常量和方法

Double 类的构造方法

Double 类中的构造方法有如下两个。

Double(double value):构造一个新分配的 Double 对象,它表示转换为 double 类型的参数。

Double(String s):构造一个新分配的 Double 对象,它表示 String 参数所指示的 double 值。

Double double1=new Double(5.456); //以 double 类型的变量作为参数创建 Double 对象
Double double2=new Double("5.456"); //以 String 类型的变量作为参数创建 Double 对象
 

Double 类的常用方法

byteValue()byte以 byte 类型返回该 Double 的值
doubleValue()double以 double 类型返回该 Double 的值
fioatValue()float以 float 类型返回该 Double 的值
intValue()int以 int 类型返回该 Double 的值(强制转换为 int 类型)
longValue()long以 long 类型返回该 Double 的值(强制转换为 long 类型)
shortValue()short以 short 类型返回该 Double 的值(强制转换为 short 类型)
isNaN()boolean如果此 Double 值是一个非数字值,则返回 true,否则返回 false
isNaN(double v)boolean如果指定的参数是一个非数字值,则返回 true,否则返回 false
toString()String返回一个表示该 Double 值的 String 对象
valueOf(String s)Double返回保存指定的 String 值的 Double 对象
parseDouble(String s)double将数字字符串转换为 Double 数值

String str="56.7809";
double num=Double.parseDouble(str); //将字符串转换为 double 类型的数值
double d=56.7809;
String s=Double.toString(d); //将double类型的数值转换为字符串
 

Double 类的常用常量

在 Double 类中包含了很多常量,其中较为常用的常量如下。
MAX_VALUE:值为 1.8E308 的常量,它表示 double 类型的最大正有限值的常量。
MIN_VALUE:值为 4.9E-324 的常量,它表示 double 类型数据能够保持的最小正非零值的常量。
NaN:保存 double 类型的非数字值的常量。
NEGATIVE_INFINITY:保持 double 类型的负无穷大的常量。
POSITIVE_INFINITY:保持 double 类型的正无穷大的常量。
SIZE:用秦以二进制补码形式表示 double 值的比特位数。
TYPE:表示基本类型 double 的 Class 实例。
 

Number

Number 是一个抽象类,也是一个超类(即父类)。Number 类属于 java.lang 包,所有的包装类(如 Double、Float、Byte、Short、Integer 以及 Long)都是抽象类 Number 的子类

Number 类定义了一些抽象方法,以各种不同数字格式返回对象的值。如 xxxValue() 方法,它将 Number 对象转换为 xxx 数据类型的值并返回,其中 doubleValue() 方法返回 double 类型的值,floatValue() 方法返回 float 类型的值,抽象类不能直接实例化,而是必须实例化其具体的子类

Number num=new Double(12.5);
System.out.println("返回 double 类型的值:"+num.doubleValue());
System.out.println("返回 int 类型的值:"+num.intValue());
System.out.println("返回 float 类型的值:"+num.floatValue());
 

Boolean类

Boolean 类将基本类型为 boolean 的值包装在一个对象中。一个 Boolean 类的对象只包含一个类型为 boolean 的字段。此外,此类还为 boolean 和 String 的相互转换提供了很多方法,并提供了处理 boolean 时非常有用的其他一些常用方法

Boolean 类的构造方法

Boolean(boolean boolValue);
Boolean(String boolString);
 

Boolean 类的常用方法

booleanValue()boolean将 Boolean 对象的值以对应的 boolean 值返回
equals(Object obj)boolean判断调用该方法的对象与 obj 是否相等。当且仅当参数不是 null,且与调用该
方法的对象一样都表示同一个 boolean 值的 Boolean 对象时,才返回 true
parseBoolean(String s)boolean将字符串参数解析为 boolean 值
toString()string返回表示该 boolean 值的 String 对象
valueOf(String s)boolean返回一个用指定的字符串表示的 boolean 值
 

Boolean 类的常用常量

TRUE:对应基值 true 的 Boolean 对象。
FALSE:对应基值 false 的 Boolean 对象。
TYPE:表示基本类型 boolean 的 Class 对象。
 

Byte类

Byte 类将基本类型为 byte 的值包装在一个对象中。一个 Byte 类的对象只包含一个类型为 byte 的字段。此外,该类还为 byte 和 String 的相互转换提供了方法,并提供了一些处理 byte 时非常有用的常量和方法

Byte 类的构造方法

Byte 类提供了两个构造方法来创建 Byte 对象

//通过这种方法创建的 Byte 对象,可以表示指定的 byte 值
Byte(byte value)
//通过这个方法创建的 Byte 对象,可表示 String 参数所指定的 byte 值
Byte(String s)
 

Byte 类的常用方法

byteValue()byte以一个 byte 值返回 Byte 对象
compareTo(Byte bytel)int在数字上比较两个 Byte 对象
doubleValue()double以一个 double 值返回此 Byte 的值
intValue()int以一个 int 值返回此 Byte 的值
parseByte(String s)byte将 String 型参数解析成等价的 byte 形式
toStringOString返回表示此 byte 值的 String 对象
valueOf(String s)Byte返回一个保持指定 String 所给出的值的 Byte 对象
equals(Object obj)boolean将此对象与指定对象比较,如果调用该方法的对象与 obj 相等 则返回 true,否则返回 false
 

Byte 类的常用常量

MIN_VALUE:byte 类可取的最小值。
MAX_VALUE:byte 类可取的最大值。
SIZE:用于以二进制补码形式表示的 byte 值的位数。
TYPE:表示基本类 byte 的 Class 实例。
 

System类

System 类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于 java. lang 包。由于该类的构造方法是 private 的,所以无法创建该类的对象,也就是无法实例化该类。

System 类内部的成员变量和成员方法都是 static 的,所以可以方便地进行调用

System 类的成员变量

System 类有 3 个静态成员变量,分别是 PrintStream out、InputStream in 和 PrintStream err

PrintStream out

标准输出流。此流已打开并准备接收输出数据。通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标

System.out.println(data);//println 方法是属于流类 PrintStream 的方法,而不是 System 中的方法
 

InputStream in

标准输入流。此流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源

PrintStream err

标准的错误输出流。其语法与 System.out 类似,不需要提供参数就可输出错误信息。也可以用来输出用户指定的其他信息,包括变量的值

System 类的成员方法

System 类中提供了一些系统级的操作方法,常用的方法有 arraycopy()、currentTimeMillis()、exit()、gc() 和 getProperty()

arraycopy()

该方法的作用是数组复制,即从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束

public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
 

src 表示源数组,srcPos 表示从源数组中复制的起始位置,dest 表示目标数组,destPos 表示要复制到的目标数组的起始位置,length 表示复制的个数

char[] srcArray={'A','B','C','D'};
char[] destArray={'E','F','G','H'};
System.arraycopy(srcArray,1,destArray,1,2);//复制后,destArray为 EBCH
 

currentTimeMillis()

该方法的作用是返回当前的计算机时间,时间的格式为当前计算机时间与 GMT 时间(格林尼治时间)1970 年 1 月 1 日 0 时 0 分 0 秒所差的毫秒数

long m=System.currentTimeMillis();
 

exit()

该方法的作用是终止当前正在运行的 Java 虚拟机

public static void exit(int status)
 

status 的值为 0 时表示正常退出,非零时表示异常退出

gc()

该方法的作用是请求系统进行垃圾回收。至于系统是否立刻回收,取决于系统中垃圾回收算法的实现以及系统执行时的情况

public static void gc()
 

getProperty()

该方法的作用是获得系统中属性名为 key 的属性对应的值

java. versionJava 运行时琢境版本
java.homeJava 安装目录
os.name操作系统的名称
os.version操作系统的版本
user.name用户的账户名称
user.home用户的主目录
user, dir用户的当前工作目录

String jversion=System.getProperty("java.version");//输出java当前版本
 

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

文章标题:Java入门教程六(内置包装类)

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

关于作者: 智云科技

热门文章

网站地图