第17章 Java中对数据的处理

本章将继续讲述如何处理数据,包括一些经常使用的数据处理方法,例如包装类、随机性数据处理类、数据整理和排序处理类等。其实,在应用程序中,最能让用户感兴趣的不是华丽的界面,而是数据。例如一个学校管理系统,大家要看这个软件是否好,当然关心软件是如何处理数据的。可见处理数据在程序中的作用是何等之大。

本章重点:

基本数据类型和对象数据类型的转换。

随机性数据的处理。

数据的排序和整理。

17.1 如何将基本数据类型转换为对象

前面介绍过,Java语言分为基本数据类型和对象数据类型,而前面大部分的章节是讲述如何处理基本类型的数据。本章讲述对象类型数据的处理方法,通过大量实例和经验总结,介绍如何熟练地处理程序中的数据。

17.1.1 为什么要将基本数据转换为对象

Java是一种面向对象语言,Java中的类把方法与数据连接在一起,并构成了自包含式的处理单元。在Java中不能定义基本类型(primitive type)。为了能将基本类型视为对象来处理,并能连接相关的方法,Java为每个基本类型都提供了包装类,这样,便可以把这些基本类型转化为对象来处理。这些包装类有“Boolean”、“Byte”、“Short”、“Character”、“Integer”、“Long”、“Float”、“Void”等。

Java可以直接处理基本类型,但是,在有些情况下,需要将其作为对象来处理,这时就需要将其转化为包装类。所有的包装类(Wrapper Class)都有共同的方法,它们是:

带有基本值参数并创建包装类对象的构造函数,如可以利用Integer包装类创建对象,Integer obj=new Integer(145)。

带有字符串参数并创建包装类对象的构造函数,如new Integer(“-45.36”)。

生成字符串表示法的toString()方法,如obj.toString()。

对同一个类的两个对象进行比较的equals()方法,如obj1.eauqls(obj2)。

生成哈希表代码的hashCode()方法,如obj.hashCode()。

将字符串转换为基本值的parseType()方法,如Integer.parseInt(args[0])。

可生成对象基本值的typeValue()方法,如obj.intValue()。

在一定的场合,运用Java包装类来解决问题,能大大提高编程效率。

Wrapper类由以下几个部分组成。

Boolean:将boolean型数据包装成Boolean类对象。

Byte:将byte型数据包装成Byte类对象。

Character:将character型数据包装成Character类对象。

Short:将short型数据包装成Short类对象。

Integer:将integer型数据包装成Integer类对象。

Long:将long型数据包装成Long类对象。

Float:将float型数据包装成Float类对象。

Double:将double型数据包装成Double类对象。

说明 由于所有的Wrapper类都具有相似的成员,因此在这里就以Integer类为例,讲述包装类的使用。