




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数组与字符串,2.8数组,数组的定义数组的内存分配及特点数组操作常见问题数组常见操作数组中的数组,2.8.1数组的定义,概念,同一种类型数据的集合。其实数组就是一个容器。,数组的好处,可以自动给数组中的元素从0开始编号,方便操作这些元素。,格式1:,元素类型数组名=new元素类型元素个数或数组长度;示例:intarr=newint5;,格式2:,元素类型数组名=new元素类型元素,元素,;,intarr=newint3,5,1,7;intarr=3,5,1,7;,arr0 x0012,2.8.2数组内存结构intarr=newint4;,栈内存,newint4,0 x0012,堆内存arr0,arr1arr2arr3,2.8.2内存结构Java程序在运行时,需要在内存中的分配空间。为了提高运算效率,有对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。栈内存,用于存储局部变量,当数据使用完,所占空间会自动释放。,堆内存,数组和对象,通过new建立的实例都存放在堆内存中。,每一个实体都有内存地址值实体中的变量都有默认初始化值实体不在被使用,会在不确定的时间内被垃圾回收器回收方法区,本地方法区,寄存器,2.8.3数组操作常见问题,数组脚标越界异常(ArrayIndexOutOfBoundsException),intarr=newint2;,System.out.println(arr3);,访问到了数组中的不存在的脚标时发生。,空指针异常(NullPointerException),intarr=null;,System.out.println(arr0);,arr引用没有指向实体,却在操作实体中的元素时。,2.8.4数组常见操作,获取最值(最大值,最小值)排序(选择排序,冒泡排序)折半查找(二分查找),2.8.5数组中的数组二维数组格式1:intarr=newint34;,定义了名称为arr的二维数组,二维数组中有3个一维数组每一个一维数组中有4个元素一维数组的名称分别为arr0,arr1,arr2给第一个一维数组1脚标位赋值为78写法是:arr01=78;格式2:intarr=newint3;,二维数组中有3个一维数组,每个一维数组都是默认初始化值null可以对这个三个一维数组分别进行初始化arr0=newint3;arr1=newint1;arr2=newint2;,2.8.5数组中的数组格式3:intarr=3,8,2,2,7,9,0,1,6;,定义一个名称为arr的二维数组,二维数组中的有三个一维数组每一个一维数组中具体元素也都已初始化第一个一维数组arr0=3,8,2;第二个一维数组arr1=2,7;第三个一维数组arr2=9,0,1,6;第三个一维数组的长度表示方式:arr2.length;练习:获取arr数组中所有元素的和。使用for的嵌套循环即可。注意特殊写法情况:intx,y;x是一维数组,y是二维数组。,练习,基础练习题进制转换幸运儿,String类,字符串是一个特殊的对象。,字符串一旦初始化就不可以被改变。Stringstr=“abc”;Stringstr1=newString(“abc”);有什么区别?,String类部分方法,charcharAt(intindex)intlength()chartoCharArray();intindexOf(Stringstr);booleanendsWith(Stringstr);Stringsplit(Stringreg);Stringsubstring(intindex);String(chararr);,练习,子串在整串中出现的次数。两个字符串的最大相同子串。对字符串中字符进行自然顺序排序。,StringBuffer,字符串的组成原理就是通过该类实现的。StringBuffer可以对字符串内容进行增删。StringBuffer是一个容器。很多方法与String相同。StingBuffer是可变长度的。,StringBuffer特有方法,StringBufferappend(intx);StringBufferdelete(intstart,intend);StringBufferinsert(intindex,Str
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论