欢迎来到天天文库
浏览记录
ID:36206442
大小:364.31 KB
页数:13页
时间:2019-05-07
《java数组及常用类(牛曼冰)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、学习导读数组和向量是Java语言编制程序要经常使用的数据结构,因此,熟练掌握这些数据结构是进一步学习Java程序设计的必要阶段。本章介绍Java语言中一维数组、二维数组和向量编程基础知识,为后续章节学习编程做准备。第6章数组及常用类本章学习目标掌握一维数组的定义及使用。掌握二维数组的定义及使用。掌握向量类的一般用法。6.1一维数组数组是由一组类型相同的元素组成的有顺序的数据集合。数组中每个元素的数据类型都相同,它们可以是基本数据类型、复合数据类型和数组类型。数组中所有元素都共用一个数组名,因为数组中的元素是有序排列的,所
2、以用数组名附加上数组元素的序号可惟一确定数组中每一个元素的位置,我们称数组元素的序号为下标。Java数组是一个独立的对象,要经过定义、分配内存及赋值后才能使用。数组的特点主要有以下几点:数组中的元素类型必须相同。数组的长度一旦指定即不能改变。数组中的值通过数组名和下标组合起来进行访问。6.1.1一维数组的定义在Java中,数组可以是任何类型的──原始类型或类类型,也就是说,数组元素可以是原始类型的量,也可以是某一个类的对象。数组元素类型数组名[];数组元素类型[]数组名;6.1.2一维数组的初始化1.直接指定初值的方式i
3、nt[]sa={8,-11,11,92,35};2.用关键字new初始化数组(1)先声明数组,再初始化数组。这实际上由两条语句构成,格式如下:类型标识符数组名[];数组名=new类型标识符[数组长度];(2)在声明数组的同时用new关键字初始化数组。这种初始化实际上是将上面所述的两条语句合并为一条语句。格式如下:类型标识符数组名[]=new类型标识符[数组长度];或类型标识符[]数组名=new类型标识符[数组长度];6.1.3一维数组的使用当数组初始化后就可通过数组名与下标来引用数组中的每一个元素。一维数组元素的引用格式
4、如下:arrayName[index]【例6_1】在屏幕上显示出4月份的天数【例6_2】数组的声明、初始化和其长度的测定。6.1.4对象数组当数组元素的类型是某种对象类型时,则构成对象数组。因为数组中每一个元素都是一个对象,故可以使用成员运算符“.”访问对象中的成员。【例6_3】使用对象数组示例。6.2多维数组Java中只有一维数组,却不存在称为“多维数组(multidimensionalarrays)”的明确结构。然而对一个一维数组而言,其数组元素可以是数组,这就是概念上的多维数组在Java中的实现方法。也就是说,在J
5、ava语言中,把二维数组实际上看成是其每个数组元素是一个一维数组的一维数组。其实,这里面的最根本原因是计算机存储器的编址是一维的,即存储单元的编号从0开始一直连续编到最后一个最大的编号。在Java中,多维数组实际上是数组的数组。定义多维数组变量要将每个维数放在它们各自的方括号中。6.2.1二维数组的定义二维数组的定义与一维数组类似,只是需要给出两对方括号,其格式如下:类型说明符数组名[][];或类型说明符[][]数组名;例如:intniu[][];int[][]bing;其中:类型说明符可以是Java的基本类型、类或接口
6、;数组名是用户遵循标识符命名规则给出的一个标识符;两个方括号中前面的方括号表示行,后面的方括号表示列。6.2.2二维数组的初始化1.静态初始化intintArray[][]={{1,2},{2,3},{3,4,5}};2.动态初始化(1)直接为每一维分配空间,格式如下:arrayName=newtype[arrayLength1][arrayLength2];(2)从最高维开始,分别为每一维分配空间:arrayName=newtype[arrayLength1][];arrayName[0]=newtype[arrayL
7、ength20];arrayName[1]=newtype[arrayLength21];…(3)二维简单数据类型数组的动态初始化如下:inta[][]=newint[2][];a[0]=newint[3];a[1]=newint[5];对二维复合数据类型的数组,必须首先为最高维分配引用空间,然后再顺次为低维分配空间。而且,必须为每个数组元素单独分配空间。6.2.3二维数组的使用二维数组元素访问格式如下:数组名[行下标][列下标]其中,行下标和列下标都由0开始,最大值为每一维的长度减1。与一维数组一样,也可以用.leng
8、th成员方法测定二维数组的长度,即元素的个数。只不过当使用“数组名.length”的形式测定的是数组的行数;而使用“数组名[i].length”的形式测定的是该行的列数。【例6_4】在程序中测定数组的长度6.3Vector类Java的数组具有很强的功能,但它并不总是能满足我们的要求。数组一旦被创建,它的长度就固
此文档下载收益归作者所有