欢迎来到天天文库
浏览记录
ID:37461048
大小:914.81 KB
页数:88页
时间:2019-05-12
《数组与字符串1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、12本章主要内容一维和多维数组的定义1数组元素的访问2字符串及应用32第5章数组和字符串学习导读字符、字符串、数组都是使用Java语言编制程序要经常使用的数据结构,因此,熟练掌握这些数据结构是进一步学习Java程序设计的必要阶段。通过本章的学习,应该能够熟练掌握字符、字符串、数组的各种基本操作。345.1数组的基本概念数组的概念相同数据类型的元素按一定顺序排列的集合。Java中,数组元素可以为简单数据类型,也可以为对象。Java语言内存分配问题栈内存:定义的基本类型的变量和对象的引用变量,超出作用域将自动释放。堆内存:存放由ne
2、w运算符创建的对象和数组。由Java虚拟机的自动垃圾回收器来管理。455.1数组的基本概念Java语言内存分配问题(续)引用变量:为数组或对象起的一个名称。在堆中创建一个数组或对象后,还可在栈中定义一个引用变量存放该数组或对象在堆内存中的首地址(对象的句柄),以后就可在程序中使用栈的引用变量来访问堆中的数组或对象。数组和对象在没有引用变量指向它时,就会变成垃圾,不被使用,但占内存,在随后不确定的时间释放。565.1数组的基本概念数组的主要特点数组是相同数据类型的元素的集合;数组中的各元素是有先后顺序的,它们在内存中按照这个先后顺
3、序连续存放在一起;数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,依次类推。65.1数组数组是相同类型变量的集合,可以使用共同的名字对它进行引用。在Java中,数组是对象,Object类中定义的方法都可以用于数组。数组可被定义为任何有效数据类型,也就是说,数组元素可以是基本类型,也可以是类类型或者数组。在数组中:每个元素的数据类型相同。可以通过数组名和下标来确定每一个元素。每一个元素又可以是复合数据类型。75.1数组数组类型是一种特殊的对象
4、。有:定义、初始化、引用和释放(由GC来自动实现)的过程。建立java数组需要以下三个步骤:声明数组创建数组空间初始化数组元素85.2一维数组1.数组的声明,一维数组有两种格式:格式一:数组元素类型数组名[]如:inta[];格式二:数组元素类型[]数组名如:int[]a;95.2一维数组2.数组的创建说明:为数组开辟内存空间,在创建数组空间时必须为它指明数组的长度。一个数组是一个对象,所以用new来创建数组语法格式为:数组名=new数组元素类型[数组元素的个数];例如:int[]MyIntArray;MyIntArray=n
5、ewint[10];Java中没有静态的数组定义,内存都是通过new动态分配。例如:intintArray[5];//是错误的105.2一维数组2.数组的创建例如:创建一个基本数据类型元素的数组:publicchar[]createArray(){char[]s;s=newchar[26];for(inti=0;i<26;i++){s[i]=(char)(‘A’+i);}returns;}115.2一维数组3.数组的初始化初始化数组就是要使数组中的各个元素都有确定的值。如果数组元素的类型是基本数据类型,由于基本数据类型都有缺省值
6、,数组元素都自动初始化为缺省值,比如上面的数组a中的每一个数组元素值都是0。对于以某个类的对象为数组元素的数组,初始化每个数组元素是必须的。对于数组有几个需要注意的地方:(1)所有的数组对象都有一个属性length,这个属性存储了数组元素的个数。(2)Java编程环境会自动检查数组下标是否越界。125.2一维数组3.数组的初始化静态初始化和动态初始化静态初始化就是在定义数组的同时对数组元素进行初始化静态初始化可用于任何元素类型,初值块中每个位置的每个元素对应一个引用。如:intintArray[]={1,2,3,4};int[]
7、ages={34,12,45};动态初始化是使用运算符new为数组分配空间。数组说明的方括号中的数字表示数组元素个数例如:int[]MyIntArray;MyIntArray=newint[2];MyIntArray[0]=1,MyIntArray[1]=3135.2一维数组4.数组的边界数组下标从0开始,元素个数length是数组类中唯一的数据成员变量new创建数组时系统自动给length赋值数组一旦创建完毕,其大小就固定下来程序运行时可以使用length进行数组边界检查。如果发生越界访问,则抛出一个异常14155.2一维数组
8、动态内存分配说明用new分配内存的同时,数组的每个元素都会自动赋默认值,整型为0,实数为0.0,布尔型为false,引用型为null。一维数组元素的访问要想使用数组里的元素,可利用数组名和下标来实现。数组元素的引用方式为:数组名[下标]与C/C++不同的是,Ja
此文档下载收益归作者所有