欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    Java6第四章-数组.ppt

    • 资源ID:6509253       资源大小:282KB        全文页数:33页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Java6第四章-数组.ppt

    第四章,数组和常用算法,回顾与作业点评,循环语句FOR BREAKCONTINUE 嵌套循环JAVA debug技术,本章任务,掌握一维数组掌握常用算法掌握多维数组for循环与数组,知识要点,一维数组常用算法多维数组for循环与数组,4.1 一维数组,为什么要用数组,int result1;int result2;.int result29;int result30;,过程繁琐变量定义太多操作变量不方便,在程序中存储30个学生的学习成绩,一维数组,字画类,格子提供了存储空间每一类别都有一个名字每件物品都有个标号,一维数组,int,与此类似,在JAVA数据存放中,也可以分类存放多个数据,这在编程中通过数组来完成,可以提高数据的查找效率。,一维数组,中的数组的概念Java中的数组就是存放一些相同数据类型元素的集合,一个数组就是一个用来存储一系列变量的命名区域,因此,可以使用数组组织变量。,result,数组名,result0,result29,数组下标从0开始。数组中每个变量用“数组名下标”标示,下标,4.1.3 如何使用数组1.声明数组 如:int a;,类型 数组名 或者 类型 数组名;,类型说明符,说明数组的类型,数组名,用标识符命名,数组的声明和定义,一维数组的定义数组名的命名规则与变量名的命名规则相同“”是数组的标志,不能用圆括号或者其他符号代替在Java语言中,不能在声明数组时指定数组的长度,而应该在定义时指定,例如:int x5;/编译时将出错 int x=new int5;/正确,类型 数组名=new 类型 常量表达式;,int r=new int5;,r0,r1,r2,r3,r4,数组的元素的个数,数组的下标从0变化到常量达式的值减1,2.分配数组内存空间 a=new int5;3.给数组元素赋值 a0=8;1)边声明边赋值 int score=89,79,76;2)动态从键盘输入信息并赋值 scorei=input.nextInt();4.处理数据 a0=a0*10;,public class Array1/*求5个元素的数组的和*数组的使用:1.告诉计算机声明一个数组并制定数组中装的数据类型 2.告诉计算机要开辟几个空间来装数据 3.给开辟的每一个空间赋值 4.使用数据,求和*/public static void main(String args)int a;a=new int5;a0=8;/叫第一个元素,也可以叫第0号元素。a1=9;a2=10;a3=11;a4=10;int sum=a0+a1+a2+a3+a4;System.out.println(和为:+sum);,public class Array2/*数组的使用:*声明数组arr3 再赋值初始化arr3*4.使用*/public static void main(String args)String arr3;arr3=new String I,like,C#;int a=8,9,10,11,10;/a=new int5;/a0=8;/叫第一个元素,也可以叫第0号元素。/a1=9;/a2=10;/a3=11;/a4=10;int sum=a0+a1+a2+a3+a4;System.out.println(和为:+sum);,声明数组后再赋值初始化,public class Array3/*数组的使用:*1,2,3声明的同时并开辟空间并赋予初值*4.使用*/public static void main(String args)int a=new int 8,9,10,11,10;/赋几个值就开辟几个空间/int a=8,9,10,11,10;/a=new int5;/a0=8;/叫第一个元素,也可以叫第0号元素。/a1=9;/a2=10;/a3=11;/a4=10;int sum=a0+a1+a2+a3+a4;System.out.println(和为:+sum);,前三步合成一步来进行数组的声明,开辟空间并赋初值。,import java.util.*;public class Array4/*数组的使用:*1.声明一个数组告诉计算机数组中装的数据类型,并告诉计算机开辟几个空间*2.通过循环输入也就是动态输入给数组中每一个元素赋值,相当于我们的Array*3.使用*/public static void main(String args)int a=new int5;Scanner input=new Scanner(System.in);System.out.println(请您输入5个整型数据:);for(int i=0;i 5;i+)ai=input.nextInt();/给数组中的元素动态赋予值。/int a=8,9,10,11,10;/a=new int5;/a0=8;/叫第一个元素,也可以叫第0号元素。/a1=9;/a2=10;/a3=11;/a4=10;int sum=a0+a1+a2+a3+a4;System.out.println(和为:+sum);,动态从键盘输入信息并给数组赋值,public class Array5/*循环的动态输出数组中的元素*/public static void main(String args)int a=8,9,10,11,10;for(int i=0;i 可以计算出数组中所有元素的个数System.out.println(数组中第+i+号元素的名为:a+i+值为+ai);,动态输出数组元素:,4.14数组常见错误1.没有明确指明数组的大小int score=new int;2.数组越界int score=new int2;score2;3.数组初始化错误int score=new int5;score=60,80,90,70,85;4.没给数组元素赋值int score=new int3;System.out.println(score1);,4.2常用算法1.求平均值,public class Array6/*思路:*1.首先定义一个数组并装入个值*2.定义一个装和的变量sum,定义一个装平均数的变量avg*3.通过循环累加求和*4.通过和除以个数等于平均数*/public static void main(String args)int a=20,30,10,20,20,20,40,0;double sum=0;double avg=0;for(int i=0;ia.length;i+)sum=sum+ai;avg=sum/a.length;System.out.println(和为:+sum+平均数为:+avg);,import java.util.*;public class Array7/*动态给数组赋值并计算总数和平均数*/public static void main(String args)int a=new int10;Scanner input=new Scanner(System.in);System.out.println(请您输入10个学员的成绩:);double sum=0;/专门装和double avg=0;/装平均数for(int i=0;i a.length;i+)ai=input.nextInt();sum=sum+ai;System.out.println(您输入的10个学员的成绩总成绩为:+sum);System.out.println(平均成绩为:+sum/a.length);,2.求最大值,68,68,50,96,85,79,90,96,68,50,95,85,79,90,96,2.求最大值,public class Max/*求一列数中最大值和最小值*/public static void main(String args)int a=88,99,33;/通过循环扫描数组int max=a0;/max=88;for(int i=0;i max)/8888 9988 3388max=ai;/max=33;System.out.println(本列数据中最大值是:+max);,3求最小值,public class Min/*求一列数中最大值和最小值*/public static void main(String args)int a=88,99,33;/通过循环扫描数组int min=a0;/min=88;for(int i=0;i a.length;i+)if(ai min)/8888 9988 3388min=ai;/min=33;System.out.println(本列数据中最小值是:+min);,数组排序 Arrays.sort();,import java.util.*;public class Array9Sort/*deprecated 通过Arrays.sort(数组名);实现数据排序。*/public static void main(String args)Scanner input=new Scanner(System.in);System.out.print(请您输入五位学员的成绩:n);int a=new int5;for(int i=0;i a.length;i+)System.out.print(请您输入第+(i+1)+位学员的成绩t);ai=input.nextInt();/循环输出数据System.out.println(您输入的分数的数据排序前为:);for(int i=0;i a.length;i+)System.out.print(ai+t);Arrays.sort(a);/按升序对数组a排序/循环输出数据System.out.println(n您输入的分数的数据排序后为:);for(int i=0;i a.length;i+)System.out.print(ai+t);,数组复制 1 用for循环来完成,public class ArrayCopy public static void main(String args)/变量的复制与赋值int a=8;int b;b=a;System.out.println(b);int c=89,98,68;int d;d=c;System.out.println(d);/数组的复制int m=9,7,5,90,87,56,45;int n=new intm.length;/int n=new int7;System.out.println(m数组中对应的每一个元素的输出默认之前为:);for(int i=0;im.length;i+)System.out.print(mi+t);/-复制前数组n为System.out.println(nn数组中对应的每一个元素的输出默认之前为:);for(int i=0;in.length;i+)System.out.print(ni+t);/将m数组中的每一个元素赋值到n数组中对应的每一个元素中for(int i=0;im.length;i+)/-复制-数组ni=mi;/n0=m0;n1=m1;./n中的值循环输出-复制后n数组为System.out.println(n将m数组中的每一个元素赋值给n数组中对应的每一个元素后n数组的输出为:);for(int i=0;in.length;i+)System.out.print(ni+t);,public class ArrayCopySystem/*param 使用System类别所提供的arraycopy*()方法实现数组复制。*/public static void main(String args)int arr1=1,2,3,4,5;int arr2=new int5;System.out.println(数组arr1中数据没有复制到数组arr2中时 arr2中元素为:);for(int i=0;i arr2.length;i+)System.out.print(arr2i+);System.arraycopy(arr1,0,arr2,0,arr1.length);System.out.println();/回车换行/将第一个数组从0位置开始的所有元素复制到第二个数组从0位置开始的所有元素中。System.out.println(数组arr1中数据复制到数组arr2中后 arr2中元素为:);for(int i=0;i arr2.length;i+)System.out.print(arr2i+);System.out.println();,2用System.arraycopy()复制数组,4.3多维数组:可看做数组的数组,数组的元素本 身就是数组。二重循环:在循环体中再嵌入一层循环。,import java.util.*;public class ForFor/*某次程序大赛,3个班级各4名学员参赛,计算每个班参赛学员的平均分*分析:共3个班级,循环3次计算每个班的平均分 每班4名学员,循环4次累加总分*/public static void main(String args)Scanner input=new Scanner(System.in);/外层循环要循环三次for(int i=0;i 3;i+)/控制三个班级int sum=0;/内层循环要计算每个班级的学员的总分System.out.println(请您输入第+(i+1)+个班级的四个学员的分数:);for(int j=0;j 4;j+)/控制每一个班级的四个学员的总分System.out.println(请您输入第+(j+1)+个学员的成绩:);int score=input.nextInt();sum=sum+score;double avg=sum/4;System.out.println(第+(i+1)+个班级的平均分是:+avg);System.out.println(计算完毕!);,*,public class SanJiao public static void main(String args)for(int i=0;i10;i+)/内层循环的结束条件与外层循环变量有关 for(int j=0;ji;j+)System.out.print(*);System.out.println();/换行,流程控制语句continue,import java.util.*;public class TongJiFor public static void main(String argus)Scanner input=new Scanner(System.in);int count=0;for(int i=0;i85 numbers=+count);System.out.println(tongji ends!);,流程控制语句2.break,import java.util.*;public class GouYiFu public static void main(String argus)Scanner input=new Scanner(System.in);int count=0;int i=0;for(i=0;i5;i+)System.out.println(welcome+(i+1)+shop!);for(int j=0;j3;j+)System.out.println(do u wanna leave?y/n);String choice=input.next();if(choice.equals(y)break;System.out.println(buy a clothes!);count+;S System.out.println(leave shop!);System.out.println(u in+i+buy+count+clothes!);,二维数组使用名称和两个索引来制定存取数组中的元素。int arr=new int23;,Arr0,Arr1,arr,Arr00Arr01Arr02,Arr10Arr11Arr12,二维数组可先分解为两个一维数组,然后再分别输出数据,public class Arraya public static void main(String argus)int arr=1,2,3,4,5,6;int foo=arr0;for(int i=0;ifoo.length;i+)System.out.print(fooi+);System.out.println();foo=arr1;for(int i=0;ifoo.length;i+)System.out.print(fooi+);System.out.println();,二维数组,4.4经典算法 1.冒泡排序,public class BubbleSort public static void main(String args)int values=3,1,6,12,9,0,7,4,5;sort(values);for(int i=0;i valuesj+1)temp=valuesj;valuesj=valuesj+1;valuesj+1=temp;,2.选择排序 class Selectpublic static void main(String args)int as=6,3,1,8,90,5,22;sorts(as);for(int i:as)System.out.println(i+);public static void sorts(int a)for(int i=0;iaj)k=j;int temp=0;if(i!=k)temp=ai;ai=ak;ak=temp;,4.5增强for 循环,int arr=1,4,5,8,0;for(int temp:arr)System.out.println(temp);int arr=1,2,3,4,5,6,7,8,9;for(int row:arr)for(int e:row)System.out.println(e+t);,

    注意事项

    本文(Java6第四章-数组.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开