资源描述:
《(6-2)第六章Authorware课件开发――交互课件开发.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章对象群体的组织郑莉JAVA语言程序设计本讲内容对象数组容器类数组在Java提供的存储及随机访问对象序列的各种方法中,数组是效率最高的一种。类型检查边界检查优点数组知道其元素的类型编译时的类型检查大小已知代价:数组对象的大小是固定的,而且不可在那个数组对象的“存在时间”内发生改变。数组类有四个基本的方法equals( )fill( )sort( )binarySearch( )asList( )比较数组equals(type[]a,type[]b)系列方法是做两个数组的比较的,相等返回true。注意比较
2、两个float数组的时候,对每个元素比较,不是用==,而是用newFloat(f1).equals(newFloat(f2))。这个方法认为NaN等于它本身,0.0f不等于-0.0f。对于double数组也是一样的。对于Object[]数组呢,是用的(e1==null?e2==null:e1.equals(e2))。填充数组Arrays.fill(type[]a,typeval)给数组填充。就是简单的把一个数组全部或者某段数据填成一个特殊的值。数组元素排序、查找sort(type[]a)对数组排序bina
3、rySearch( )查找转换用Arrays.asList(Object[]a)实现数组到ArrayList的转换数组的填充和复制//ex7_1importjava.util.*;publicclassCopyingArrays{publicstaticvoidmain(String[]args){int[]i=newint[25];int[]j=newint[25];Arrays.fill(i,47);Arrays.fill(j,99);System.arraycopy(i,0,j,0,i.length)
4、;int[]k=newint[10];Arrays.fill(k,103);System.arraycopy(i,0,k,0,k.length);Arrays.fill(k,103);System.arraycopy(k,0,i,0,k.length);Integer[]u=newInteger[10];Integer[]v=newInteger[5];Arrays.fill(u,newInteger(47));Arrays.fill(v,newInteger(99));System.arraycopy(v
5、,0,u,u.length/2,v.length);}}数组的比较//ex7_2importjava.util.*;publicclassComparingArrays{publicstaticvoidmain(String[]args){int[]a1=newint[10];int[]a2=newint[10];Arrays.fill(a1,47);Arrays.fill(a2,47);System.out.println(Arrays.equals(a1,a2));//truea2[3]=11;Syst
6、em.out.println(Arrays.equals(a1,a2));//falseString[]s1=newString[5];Arrays.fill(s1,"Hi");String[]s2={"Hi","Hi","Hi","Hi","Hi"};System.out.println(Arrays.equals(s1,s2));//true}}数组元素的比较//ex7_3importjava.util.*;publicclassCompTypeimplementsComparable{//实现Comp
7、arable接口,自定义compareTo方法inti;intj;publicCompType(intn1,intn2){i=n1;j=n2;}publicStringtoString(){return"[i="+i+",j="+j+"]";}publicintcompareTo(Objectrv){intrvi=((CompType)rv).i;return(i8、wCompType(1,2),newCompType(2,1),newCompType(-5,6),newCompType(21,4),newCompType(-6,3),newCompType(12,45),newCompType(43,1),newCompType(-76,5),newCompType(44,33),newCompType(22,11)};Arrays.sort(a);}}数组排序//ex7_