Java JDK 6学习笔记章 (4)

上传人:伴*** 文档编号:243096079 上传时间:2024-09-15 格式:PPT 页数:25 大小:461KB
返回 下载 相关 举报
Java JDK 6学习笔记章 (4)_第1页
第1页 / 共25页
Java JDK 6学习笔记章 (4)_第2页
第2页 / 共25页
Java JDK 6学习笔记章 (4)_第3页
第3页 / 共25页
点击查看更多>>
资源描述
单击以编辑母片标题样式,单击以编辑母片,第二层,第三层,第四层,第五层,*,第,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;,一维数组对象,数据型态,初始值,byte,0,short,0,int,0,long,0L,float,0.0f,double,0.0d,char,u0000,boolean,false,一维数组对象,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, 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;,可以使用动态的方式来宣告数组长度,而不用在程序中事先决定数组大小,二维数组对象,二维数组使用名称与两个索引来指定存取数组中的元素,以对象的方式来配置一个二维数组对象,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 = 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 arr = 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 = 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.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 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,取出,arr1,中的元素:,);,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; 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.length; i+),System.out.print(arr2i + );,System.out.println();,Arrays,类别,名称,说明,sort(),帮助您对指定的数组排序,所使用的是快速排序法,binarySearch(),让您对已排序的数组进行二元搜寻,如果找到指定的值就传回该值所在的索引,否则就传回负值,fill(),当您配置一个数组之后,会依数据型态来给定默认值,例如整数数组就初始为,0,,您可以使用,Arrays.fill(),方法来将所有的元素设定为指定的值,equals(),比较两个数组中的元素值是否全部相等,如果是将传回,true,,否则传回,false,数组比较,不可用,=,比较两个数组的元素值是否相等,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 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,与数组,加强的,for,循环(,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 = 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;,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!