数组在Java编程中的应用 - 编程入门网
utput;
public void init()
{
outputArea = new JTextArea();
Container c = getContentPane();
c.add( outputArea );
int a[] = { 1, 2, 3, 4, 5 };
output = "Effects of passing entire " +
"array call-by-reference:\n" +
"The values of the original array are:\n";
for ( int i = 0; i < a.length; i++ )
output += " " + a[ i ];
modifyArray( a ); // array a passed call-by-reference
output += "\n\nThe values of the modified array are:\n";
for ( int i = 0; i < a.length; i++ )
output += " " + a[ i ];
output += "\n\nEffects of passing array " +
"element call-by-value:\n" +
"a[3] before modifyElement: " + a[ 3 ];
modifyElement( a[ 3 ] );
output += "\na[3] after modifyElement: " + a[ 3 ];
outputArea.setText( output );
}
public void modifyArray( int b[] )
{
for ( int j = 0; j < b.length; j++ )
b[ j ] *= 2;
}
public void modifyElement( int e )
{
e *= 2;
}
}
数组在Java编程中的应用(3)时间:2010-12-08分析: 1. outputArea = new JTextArea(); Container c = getContentPane(); c.add( outputArea ); 定义一个container用来输出结果. 2. int a[] = { 1, 2, 3, 4, 5 };定义数组a[] 3. output = "Effects of passing entire " + array call-by-reference:\n" + "The values of the original array are:\n"; 在output字符串后追加标记 for ( int i = 0; i < a.length; i++ ) output += " " + a[ i ]; 在TextArea上输出a[i]为1,2,3,4,5 4. modifyArray( a ); // array a passed call-by-reference 引用参数 output += "\n\nThe values of the modified array are:\n"; 追加字符 for ( int i = 0; i < a.length; i++ ) output += " " + a[ i ]; 循环显示
返回了计算后的a[]=b[j]*2 b[j]是临时的 此处体现callby value 数组b是 一个拷贝,计算结束后传递给被调用的方法,b在计算后自动销毁。 输出的结果是a[3] brefore modifyelment:8 5.modifyElement( a[ 3 ] ); output += "\na[3] after modifyElement: " + a[ 3 ]; outputArea.setText( output );与 过程结合 public void modifyElement( int e ) { e *= 2; } 返回了计算后的a[3]after modifyelment:8 e是临时变量,运行后自动销毁。 5. 数组排序:排序使程序按某种顺序进行排列,升序或降序.这是计算机数据 处理中中应用最多的一项.例如银行的帐户排序,工资排序等.在次不作过多介绍 。 6.数组查找:分线性插找和折半查找:对于小型的数组线性查找效果可能很好 ,对于大型数据效率就很低了,可以用折半查找,效率会很大的提高,折半查找 的方法是,例如查找含63个元素只需要比较6次大小 第一次查找下标 (1+63)/2=32查找 若大于关键子,则到下标为1-32中查找,若小与关键子,则到 33-63中查找,若找不到,继续到下一个范围中找,就是在将32分半,以上面的方 法以此类推,只道找到为止。 而查找的最多比较次数:满足2的k次方大于n的k次的最小整数值。由此可推 算对于10亿个数组来说用线性查找5亿次和用折半查找30次是多么大的差距。 7.和其他语言的多维数 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |