Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章

上传人:w****i 文档编号:94405811 上传时间:2019-08-06 格式:PPT 页数:25 大小:461KB
返回 下载 相关 举报
Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章_第1页
第1页 / 共25页
Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章_第2页
第2页 / 共25页
Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章_第3页
第3页 / 共25页
Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章_第4页
第4页 / 共25页
Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章》由会员分享,可在线阅读,更多相关《Java JDK 6学习笔记 教学课件 ppt 作者 978-7-302-14995-8第05章(25页珍藏版)》请在金锄头文库上搜索。

1、第5章,阵 列 一维数组、二维数组 进阶数组观念,一维数组对象,宣告一个数组并初始数组内容 指定的索引值不可超出数组范围 会发生ArrayIndexOutOfBoundsException length为数组对象的属性成员,int score = 90, 85, 55, 94, 77; for(int i = 0; i score.length; i+) System.out.printf(“score%d = %dn“, i, scorei);,一维数组对象,当您宣告一个数组时,其实就是在配置一个数组对象 一个完整的数组宣告方式如下,int arr = new int10;,一维数组对象,一

2、维数组对象,int arr = new int10; System.out.print(“arr初始值: “); for(int i = 0; i arr.length; i+) System.out.print(arri + “ “); arri = i; System.out.print(“narr设定值: “); for(int i = 0; i arr.length; i+) System.out.print(arri + “ “); System.out.println();,一维数组对象,在使用new新增数组时一并指定初始值,int score = new int 90, 85,

3、55, 94, 77; for(int i = 0; i score.length; i+) System.out.printf(“score%d = %dn“, i, scorei);,一维数组对象,int length = scanner.nextInt(); float score = new floatlength; /动态配置长度 for(int i = 0; i score.length; i+) System.out.print(“输入分数:“); float input = scanner.nextFloat(); scorei = input; ,可以使用动态的方式来宣告数组

4、长度,而不用在程序中事先决定数组大小,二维数组对象,二维数组使用名称与两个索引来指定存取数组中的元素 以对象的方式来配置一个二维数组对象,int arr = 1, 2, 3, 4, 5, 6; for(int i = 0; i arr.length; i+) for(int j = 0; j arr0.length; j+) System.out.print(arrij + “ “); System.out.println(); ,int arr = new int23;,二维数组对象,以对象的方式来配置一个二维数组对象,int arr = new int23;,二维数组对象,int arr

5、= 1, 2, 3, 4, 5, 6; int foo = arr0; /将arr0所参考的数组对象指定给foo for(int i = 0; i foo.length; i+) System.out.print(fooi + “ “); System.out.println(); foo = arr1; /将arr1所参考的数组对象指定给foo for(int i = 0; i foo.length; i+) System.out.print(fooi + “ “); System.out.println();,二维数组对象,使用new配置二维数组一并指定初值 宣告三维以上的数组,int a

6、rr = new int 1, 2, 3, 4, 5, 6;,int arr = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ;,int arr = new int223;,不规则数组,int arr; arr = new int2; arr0 = new int3; / arr0参考至长度为3的一维数组 arr1 = new int5; / arr1参考至长度为5的一维数组 for(int i = 0; i arr.length; i+) for(int j = 0; j arri.length; j+) arrij = j + 1; for(int i =

7、0; i arr.length; i+) for(int j = 0; j arri.length; j+) System.out.print(arrij + “ “); System.out.println(); ,进阶的数组操作,一维数组的参考名称之宣告 将同一个对象指定给两个参考名称,int arr = null;,int arr1 = 1, 2, 3, 4, 5; int tmp1 = arr1; int tmp2 = arr1; System.out.print(“透过tmp1取出数组值:“); for(int i = 0; i tmp1.length; i+) System.out

8、.print(tmp1i + “ “);,进阶的数组操作,将同一个对象指定给两个参考名称,System.out.print(“n透过tmp2取出数组值:“); for(int i = 0; i tmp2.length; i+) System.out.print(tmp2i + “ “); tmp12 = 9; System.out.print(“nn透过tmp1取出数组值:“); for(int i = 0; i tmp1.length; i+) System.out.print(tmp1i + “ “); System.out.print(“n透过tmp2取出数组值:“); for(int

9、i = 0; i tmp2.length; i+) System.out.print(tmp2i + “ “); System.out.println();,进阶的数组操作,将同一个对象指定给两个参考名称,int arr1 = 1, 2, 3, 4, 5; int tmp1 = arr1; int tmp2 = arr1;,进阶的数组操作,intarr之后,arr是一维数组的参考名称,可以参考至任何长度的一维数组对象,int arr1 = 1, 2, 3, 4, 5; int arr2 = 5, 6, 7; int tmp = arr1; System.out.print(“使用tmp取出ar

10、r1中的元素:“); for(int i = 0; i tmp.length; i+) System.out.print(tmpi + “ “); tmp = arr2; System.out.print(“n使用tmp取出arr2中的元素:“); for(int i = 0; i tmp.length; i+) System.out.print(tmpi + “ “); System.out.println();,数组复制,使用循环作数组复制,int arr1 = 1, 2, 3, 4, 5; int arr2 = new int5; for(int i = 0; i arr1.length

11、; i+) arr2i = arr1i; for(int i = 0; i arr2.length; i+) System.out.print(arr2i + “ “); System.out.println();,数组复制,使用System类别所提供的arraycopy()方法 在JDK6中,也为Arrays类别新增了数组复制的copyOf()方法,int arr1 = 1, 2, 3, 4, 5; int arr2 = new int5; System.arraycopy(arr1, 0, arr2, 0, arr1.length); for(int i = 0; i arr2.lengt

12、h; i+) System.out.print(arr2i + “ “); System.out.println();,Arrays类别,数组比较,不可用=比较两个数组的元素值是否相等,int arr1 = 1, 2, 3, 4, 5; int arr2 = 1, 2, 3, 4, 5; int tmp = arr1; System.out.println(arr1 = tmp); System.out.println(arr2 = tmp);,数组比较,deepEquals()与deepToString(),int arr1 = 1, 2, 3, 4, 5, 6, 7, 8, 9; int

13、arr2 = 1, 2, 3, 4, 5, 6, 7, 8, 9; int arr3 = 0, 1, 3, 4, 6, 4, 7, 8, 9; System.out.println(“arr1内容等于arr2 ? “ + Arrays.deepEquals(arr1, arr2); System.out.println(“arr1内容等于arr3 ? “ + Arrays.deepEquals(arr1, arr3); System.out.println(“arr1 deepToString()nt“ + Arrays.deepToString(arr1);,foreach与数组,加强的fo

14、r循环(Enhanced forLoop) J2SE 5.0之前 在J2SE5.0之后,for(type element : array) System.out.println(element) ,int arr = 1, 2, 3, 4, 5; for(int i = 0; i arr.length; i+) System.out.println(arri);,int arr = 1, 2, 3, 4, 5; for(int element : arr) System.out.println(element);,foreach与数组,如果是对象的话 二维数组,String names = “

15、caterpillar“, “momor“, “bush“; for(String name : names) System.out.println(name);,int arr = 1, 2, 3, 4, 5, 6, 7, 8, 9; for(int row : arr) for(int element : row) System.out.println(element); ,对象数组,以下产生几个对象? 以下的宣告产生几个对象? 以下产生几个对象?,int arr = new int3;,int arr = new int23;,Integer arr = new Integer3;,对象数组,以下的宣告产生几个对象?,Integer arr = new Integer23;,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号