Apache NetBeans的学习(5)

徐文斌
2023-12-01

单元 6 使用数组、文件和图表

我们将学习如何在数组和文件中存储数据。数组允许我们在一种类型中存储多个数据。这当然与只能存储一个数据的普通变量大不相同。在文件中存储数据是理解在数据库中存储数据的概念的第一步,通过在文件中存储数据,我们不必害怕丢失数据。

一、了解数组及其使用

数组是具有类似类型的数据集合。通过使用数组,可以存储大量类似类型的数据。数组是 Java 提供的一种数据结构,用于处理多个数据。这当然与普通变量的概念非常不同,普通变量只能存储一个数据。 要使用数组,首先要声明数组。
下面是如何声明数组的格式。

datatype[] ArrayName; 
//或者 
datatype ArrayName[]; `

数组变量的声明格式与普通变量的声明格式几乎相同,数据引用只要在数据类型之后或数组名称之后使用方括号“[ ]”。

int Data[]; //名称为 Data 的 int 类型数组 
String Name[]; //名称为 Name 的 String 类型数组 

上面的代码是声明 int 类型数组 Data 和 String 类型数组 Name 的例子。除了上面的声明方法外,还可以直接分配数组中可以存储的数据量。

int Data[] = new int[10]; //名为 Date 的 int 类型数组可以存储 10 个数据 
String Name[] = new String[5]; //名为 Name 的 String 类型数组可以存储 5
个数据 

上面的例子一样声明一个数组将直接决定数组中可以存储的数据量。在这
个例子中可以看到,Data 数组为 10 个 int 类型的数据分配了内存,而 Name 数组为 5 个字符串类型的数据分配了内存。
在数组中存储数据可以通过直接初始化数据或将值赋给每个数组索引来完
成。
二维数组
二维数组是由行和列组成的数组。二维数组可以比作是由行和列组成的表。当然与前面讨论的一维数组非常不同,在一维数组中它只包含一行。换句话说,二维数组是由行和列组成的矩阵,而一维数组是行向量。
可以使用以下格式声明二维数组。

datatype [][] arrayname=new datatype[row][column]; //或者下面的 
datatype arrayname[][]=new datatype[row][column]; 

二、文件操作

当程序处理重要数据时,数据必须存储在文件中。这当然与将数据存储在只是临时的普通变量上有很大的不同。一旦程序关闭或计算机重新启动,存储在变量中的数据将丢失。文件中的数据存储是永久性的。这意味着即使程序关闭或计算机重新启动,存储在文件中的数据也不会丢失。
读取文本文件
读取文件通常是在程序执行相当大的处理时完成的。由于数据量大,不可能存储在数组或普通变量中。针对从文件中读取输入,Java 提供了 IO 库中的几个类:File、OutputStream、InputStream、Writer、Reader
执行文件操作(读和写操作)时需要记住的一点是,必须使用异常处理
(try-catch)来处理错误。这是因为来自 IO 库的一些类要求我们使用异常处理。如果没有使用异常处理,IDE 将以语法错误的形式显示错误消息。
存储在文本文件中的数据并不总是由换行分隔,有时数据由空格分隔。这种情况通常发生在存储的数据数量很大的时候。

读取 Excel 文件
阅读这本书中的excel文件将使用一个外部库,即Aphace POI。Apache POI是一个Java API,用于基于 Office Open XML 操作各种文件格式。标准(OOXML)和微软的 OLE 2 复合文档格式(OLE2)。简而言之,我们可以使用 Java 读写 MS Excel文件。此外,还可以使用 Java 读写 MS Word 和 MS PowerPoint。
Apache POI 提供的 Java APIs 有几个类和接口,可以用来读取 excel 文件,包括.xls 和.xlsx 文件。

类/接口描述
WorkbookHSSFWorkbook 和 XSSFWorkbook 类实现这个接口
HSSFWorkbookXLS 文件的类表示
XSSFWorkbookXLSX 文件的类表示
Sheet-HSSFSheet 和 XSSFSheet 实现这个接口
HSSFSheetXLS 文件中工作表的类表示
XSSFSheetXLSX 文件中工作表的类表示
RowHSSFRow 和 XSSFRow 实现这个接口
HSSFRowXLS 文件中工作表的行的类表示
XSSFRowXLSX 文件中工作表的行的类表示
CellHSSFCell 和 XSSFCell 实现这个接口
HSSFCellXLS 文件中行里面的单元格的类表示
XSSFCellXLSX 文件中行里面的单元格的类表示

输入文本文件
除了文件读取操作,IO 库还提供了几个类,可用于执行文件输入操作(将
数据存储到文本文件中)。用于在文本文件中存储数据的类有 File、
FileOutputStream 和 PrintStream。
输入 Excel 文件
在学习了如何将数据存储到文本文件之后,现在我们将学习如何将数据存储到 Excel 文件中。与 Excel 文件读取操作一样,Excel 文件输入操作也将使用Apache POI。

三、图表

信息或数据通常以图形形式表示,以便于阅读。作为一种非常流行的编程语言,Java 提供了许多可用于创建图形的库。这些库有些来自内部库,有些是由称为外部库的第三方开发的。本章节我们将讨论如何使用 JFreeChart 创建图形。JFreeChart 是一个外部库,它是使用 Java 编程语言开发的,并且是开源的。此库可用于在所有基于 Java 的应用程序上创建 2D 或 3D 图形。

 类似资料: