java入门03数组(1学时)_第1页
java入门03数组(1学时)_第2页
java入门03数组(1学时)_第3页
java入门03数组(1学时)_第4页
java入门03数组(1学时)_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

主讲教师张智计算机学院软件工程系3数组3.1一维数组

3.2二维数组

3.4数组示例3.1一维数组一维数组的声明()inta[];

inta[5];×另一种声明方式(常用):int[]a;//中括号放在类型后

注意:

int[]s1,

s2; //s1,s2都是整型数组 ints1[],s2; //s1是整型数组,s2是整型变量不指定长度数组的创建数组声明不能创建对象本身,而是创建的一个引用,该引用可被用来引用数组。数组元素使用的实际存储器可由new语句动态分配:

数组名=new数据类型[数组元素个数]

例如: int[]a;a=newint[5]; 或:int[]a=newint[5];此时数组元素默认值均为0一维数组的初始化Java语言允许使用下列形式快速初始化数组:int[]a={1,2,3,4,5};√

int[]a=newint[]{1,2,3,4,5};√其他例子:String[]names={"Tom","Jerry","Simon"};Point[]p={newPoint(0,1),newpoint(1,2)};int[]a=newint[5]{1,2,3,4,5};×数组初始化时不能指定维数数组大小问题(1)数组重新引用 例如:先int[]a=newint[5];接着a=newint[10];√

则第一个数组空间被丢弃。(2)数组长度可使用变量:

intn=5; int[]a=newint[n];√(3)数组界限-length属性

示例:int[]arr=newint10;for(inti=0;i<arr.length;i++){System.out.println(arri);}一维数组遍历的新方法for-each循环(Java5.0后)for(typevarname:obj){//循环体}

type:数据类型;

varname:元素变量;

obj:需要遍历的对象,如数组、集合等。示例【Return】publicclasstest{publicstaticvoidmain(String[]args){int[]intArr={3,80,195,14,52};for(inta:intArr){//遍历int型数组的每个元素System.out.println(a);}}}二维数组创建int[][]a=newint[3][3];或者:int[][]a=newint[3][];//先指定第一维a[0]=newint[3];//再第二维分配a[1]=newint[3];a[2]=newint[3];

3.2二维数组inta[][]=newint

3×注意二维数组的第二维大小可不相等。例如:int[][]a=newint[3][];//先指定第一维a[0]=newint[1];//第二维不相等a[1]=newint[2];a[2]=newint[3];二维数组初始化方式1:一个个赋值int[][]a=newint[3][3];a[0][0]=1;a[0][1]=2;…a[2][2]=9;方式2:一行行赋值int[][]a=newint[3][];a[0]=newint[]{1};a[1]=newint[]{4,5};a[2]=newint[]{7,8,9};方式3:常用√√√ int[][]a={{1},{4,5},{7,8,9}};一维数组不指定长度二维数组length属性示例:int[][]a={{1},{4,5},{7,8,9}};for(inti=0;i<a.length;i++)//多少行{for(intj=0;j<a[i].length;j++)//每行长度System.out.print(a[i][j]+"");System.out.println();}foreach输出二维数组示例:int[][]a={{1},{4,5},{7,8,9}};for(int[]x:arr){//获得一维数组for(inte:x){//遍历一维数组System.out.print(String.format("%3d",e));

}System.out.println();}【Return】3.5数组示例计算Fibonacci数列前20项(一般+递归方法)。一般方法:intn=20;inta[]=newint[n];a[0]=a[1]=1; for(inti=2;i<a.length;i++)a[i]=a[i-1]+a[i-2];for(inti=0;i<a.length;i++){

System.out.printf("%-10d",a[i]);//printf与c语言类似 if((i+1)%5==0)System.out.println();}System.out.print(String.format("%-10d",a[i]));递归方法publicstaticintfab(intn){if(n==0||n==1)return1;elsereturnfab(n-1)+fab(n-2);}publicstaticvoidmain(String[]args){intn=20;inta[]=newint[n];for(inti=0;i<a.length;i++)a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论