易截截图软件、单文件、免安装、纯绿色、仅160KB

Java 冒泡排序

/**
* 交换排序-冒泡排序,核心思想 以大小为依据交换
*
* */
public void bubbleSort(double[] a){
//将要进行比较的数大的尽量往后排,每次循环把最大的排在要排序数组的末位。
boolean hasSwap = true;
for(int i = 1; i < a.length&& hasSwap; i ++){//循环的次数

hasSwap = false;//记录此次比较是否存在位置交换,若不存在则证明余下的数组元素已经拍好序。

for(int j = 0;j < a.length - i; j ++){//比较
if(a[j] > a[j+1]){
double temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
hasSwap = true;
}
}
}

}

Java排序算法系列--交换排序之冒泡排序


相关文档:

java 生成excel

    //** **********创建工作簿************ */
            WritableWorkbook workbook = Workbook.createWorkbook(new File("d:/test.xls"));
            /** *//** **********创建工 ......

Java 编程的动态性,第 8 部分: 用代码生成取代反射

从本系列前面的文章中,您了解到反射的性能比直接访问要慢许多倍,并了解了用 Javassist 和 Apache
Byte Code Engineering Library (BCEL)进行classworking。Java 顾问 Dennis
Sosnoski 通过演示如何使用运行时 classworking,来用全速前进的生成代码取代反射代码,从而结束他的 Java 编程的动态性
系列。
既然您已经 ......

Java 编程的动态性,第 5 部分: 动态转换类

在经过一段时间的休息之后,Dennis Sosnoski 又回来推出了他的
Java 编程的动态性

列的第 5 部分。您已在前面的文章中看到了如何编写用于转换 Java 类文件以改变代码行为的程序。在本期中,Dennis将展示如何使用
Javassist
框架,把转换与实际的类加载过程结合起来,用以进行灵活的“即时”面向方� ......

Java 编程的动态性,第3部分: 应用反射

命令行参数处理是一项令人厌烦的零碎工作,不管您过去已经处理过多少次了,它好像总能重新摆在您的面前。与其一遍又一遍地编写同
一块代码的不同变种,为什么不利用反射来简化参数处理的工作呢?Java 顾问 Dennis Sosnoski
向您展示了如何做到这一点。在本文中,Dennis 简明扼要地介绍了一个开源库,这个库可以使得命令行 ......

Java编程 的动态性,第 2部分: 引入反射

反射使您的程序代码能够接入装载到JVM中的类的内部信息,允许您编写与执行时,而不是源代码中选定的类协作的代码。这使反射成
为构建灵活的应用的主要工具。但需注意的是 --如果使用不当,反射的成本很高。在Java平台系列的第2部分中,软件顾问Dennis
Sosnoski介绍了如何使用反射,以及某些相关的成本。您还将找到JavaRef ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号