您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > Java6第四章-数组
安卓越科技(北京)有限公司1第四章数组和常用算法安卓越科技(北京)有限公司2回顾与作业点评•循环语句FOR•BREAK•CONTINUE•嵌套循环•JAVAdebug技术安卓越科技(北京)有限公司3本章任务•掌握一维数组•掌握常用算法•掌握多维数组•for循环与数组安卓越科技(北京)有限公司4知识要点•一维数组•常用算法•多维数组•for循环与数组安卓越科技(北京)有限公司5过程繁琐变量定义太多操作变量不方便在程序中存储30个学生的学习成绩安卓越科技(北京)有限公司6安卓越科技(北京)有限公司7与此类似,在JAVA数据存放中,也可以分类存放多个数据,这在编程中通过数组来完成,可以提高数据的查找效率。43210安卓越科技(北京)有限公司8中的数组的概念Java中的数组就是存放一些相同数据类型元素的集合,一个数组就是一个用来存储一系列变量的命名区域,因此,可以使用数组组织变量。0881100299......28802985result数组名result[0]result[29]数组下标从0开始。数组中每个变量用“数组名[下标]”标示下标安卓越科技(北京)有限公司9声明数组如:int[]a;类型[]数组名或者类型数组名[];类型说明符,说明数组的类型数组名,用标识符命名安卓越科技(北京)有限公司10数组的声明和定义一维数组的定义数组名的命名规则与变量名的命名规则相同“[]”是数组的标志,不能用圆括号或者其他符号代替在Java语言中,不能在声明数组时指定数组的长度,而应该在定义时指定,例如:intx[5];//编译时将出错int[]x=newint[5];//正确类型[]数组名=new类型[常量表达式];int[]r=newint[5];r[0]r[1]r[2]r[3]r[4]数组的元素的个数,数组的下标从0变化到常量达式的值减1安卓越科技(北京)有限公司11=newint[5];3.给数组元素赋值a[0]=8;1)边声明边赋值int[]score={89,79,76};2)动态从键盘输入信息并赋值score[i]=input.nextInt();4.处理数据a[0]=a[0]*10;publicclassArray1{/**求5个元素的数组的和*数组的使用:1.告诉计算机声明一个数组并制定数组中装的数据类型2.告诉计算机要开辟几个空间来装数据3.给开辟的每一个空间赋值4.使用数据,求和*/publicstaticvoidmain(String[]args){int[]a;a=newint[5];a[0]=8;;//叫第一个元素,也可以叫第0号元素。a[1]=9;a[2]=10;a[3]=11;a[4]=10;intsum=a[0]+a[1]+a[2]+a[3]+a[4];System.out.println(和为:+sum);}}安卓越科技(北京)有限公司12{/***数组的使用:*声明数组arr3再赋值初始化arr3*4.使用*/publicstaticvoidmain(String[]args){String[]arr3;arr3=newString[]{I,like,C#};int[]a={8,9,10,11,10};//a=newint[5];//a[0]=8;;//叫第一个元素,也可以叫第0号元素。//a[1]=9;//a[2]=10;//a[3]=11;//a[4]=10;intsum=a[0]+a[1]+a[2]+a[3]+a[4];System.out.println(和为:+sum);}}声明数组后再赋值初始化安卓越科技(北京)有限公司13{/***数组的使用:*1,2,3声明的同时并开辟空间并赋予初值*4.使用*/publicstaticvoidmain(String[]args){int[]a=newint[]{8,9,10,11,10};//赋几个值就开辟几个空间//int[]a={8,9,10,11,10};//a=newint[5];//a[0]=8;;//叫第一个元素,也可以叫第0号元素。//a[1]=9;//a[2]=10;//a[3]=11;//a[4]=10;intsum=a[0]+a[1]+a[2]+a[3]+a[4];System.out.println(和为:+sum);}}前三步合成一步来进行数组的声明,开辟空间并赋初值。安卓越科技(北京)有限公司14*;publicclassArray4{/***数组的使用:*1.声明一个数组告诉计算机数组中装的数据类型,并告诉计算机开辟几个空间*2.通过循环输入也就是动态输入给数组中每一个元素赋值,相当于我们的Array*3.使用*/publicstaticvoidmain(String[]args){int[]a=newint[5];Scannerinput=newScanner(System.in);System.out.println(请您输入5个整型数据:);for(inti=0;i5;i++){a[i]=input.nextInt();//给数组中的元素动态赋予值。}//int[]a={8,9,10,11,10};//a=newint[5];//a[0]=8;;//叫第一个元素,也可以叫第0号元素。//a[1]=9;//a[2]=10;//a[3]=11;//a[4]=10;intsum=a[0]+a[1]+a[2]+a[3]+a[4];System.out.println(和为:+sum);}}动态从键盘输入信息并给数组赋值安卓越科技(北京)有限公司15{/***循环的动态输出数组中的元素*/publicstaticvoidmain(String[]args){inta[]={8,9,10,11,10};for(inti=0;ia.length;i++){//a.length---可以计算出数组中所有元素的个数System.out.println(数组中第+i+号元素的名为:a[+i+]值为+a[i]);}}}动态输出数组元素:安卓越科技(北京)有限公司16[]score=newint[];2.数组越界int[]score=newint[2];score[2];3.数组初始化错误int[]score=newint[5];score={60,80,90,70,85};4.没给数组元素赋值int[]score=newint[3];System.out.println(score[1]);安卓越科技(北京)有限公司17{/***思路:*1.首先定义一个数组并装入个值*2.定义一个装和的变量sum,定义一个装平均数的变量avg*3.通过循环累加求和*4.通过和除以个数等于平均数*/publicstaticvoidmain(String[]args){inta[]={20,30,10,20,20,20,40,0};doublesum=0;doubleavg=0;for(inti=0;ia.length;i++){sum=sum+a[i];}avg=sum/a.length;System.out.println(和为:+sum+平均数为:+avg);}}安卓越科技(北京)有限公司18*;publicclassArray7{/***动态给数组赋值并计算总数和平均数*/publicstaticvoidmain(String[]args){inta[]=newint[10];Scannerinput=newScanner(System.in);System.out.println(请您输入10个学员的成绩:);doublesum=0;//专门装和doubleavg=0;//装平均数for(inti=0;ia.length;i++){a[i]=input.nextInt();sum=sum+a[i];}System.out.println(您输入的10个学员的成绩总成绩为:+sum);System.out.println(平均成绩为:+sum/a.length);}}安卓越科技(北京)有限公司19安卓越科技(北京)有限公司20{/***求一列数中最大值和最小值*/publicstaticvoidmain(String[]args){inta[]={88,99,33};//通过循环扫描数组intmax=a[0];//max=88;for(inti=0;ia.length;i++){if(a[i]max){//888899883388max=a[i];//max=33;}}System.out.println(本列数据中最大值是:+max);}}安卓越科技(北京)有限公司21{/***求一列数中最大值和最小值*/publicstaticvoidmain(String[]args){inta[]={88,99,33};//通过循环扫描数组intmin=a[0];//min=88;for(inti=0;ia.length;i++){if(a[i]min){//888899883388min=a[i];//min=33;}}System.out.println(本列数据中最小值是:+min);}}安卓越科技(北京)有限公司22();importjava.util.*;publicclassArray9Sort{/***@deprecated通过Arrays.sort(数组名);实现数据排序。*/publicstaticvoidmain(String[]args){Scannerinput=newScanner(System.in);System.out.print(请您输入五位学员的成绩:\n);inta[]=newint[5];for(inti=0;ia.length;i++){System.out.print(请您输入第+(i+1)+位学员的成绩\t);a[i]=input.nextInt();}//循环输出数据System.out.println(您输入的分数的数据排序前为:);for(inti=0;ia.length;i++){System.out.print(a[i]+\t);}Arrays.sort(a);//按升序对数组a排序//循环输出数据System.ou
本文标题:Java6第四章-数组
链接地址:https://www.777doc.com/doc-3968465 .html