import java.util.Arrays;
public class Test {
public static void arraySort(int[] arr) {
int temp;// 界说一个姑且变量
for (int i = 0; i < arr.length - 1; i++) {// 冒泡趟数 , n-1趟
boolean flag = true;
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j + 1] < arr[j]) {
flag = false;
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
// 若是当轮没有发生位置转变 , 申明已经排序完毕 , 就没有需要再进行轮回了
if (flag) {
break;
}
}
}
public static void main(String[] args) {
int arr[] = new int[] { 2, 4, 9, 7, 6, 5 };
arraySort(arr);
System.out.println(Arrays.toString(arr));
}
}
文章插图
第二步:实体对象的冒泡排序 。 1前面我们说了一下简单的根基数据类型的排序 。 下面我们解决一个实体的多前提排序 。
插手有一个圆柱实体类:Column 此刻我们需要按照其半径radius从小到大排序 , 若是半径一致 , 则按照高h从小到大排序 。
2实体类:Column
public class Column implements Comparable<Object> {
private int radius;
private int h;
public Column() {
};
public Column(int radius, int h) {
this.radius = radius;
this.h = h;
};
@Override
public String toString() {
return "Column{" + "radius=" + radius + ", h=" + h + '}';
}
@Override
public int compareTo(Object o) {
return 0;
}
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
public int getH() {
return h;
}
public void setH(int h) {
this.h = h;
}
}
文章插图
3测试类如下:
public class ColumnTest {
public static void main(String[] args) {
Column co1 = new Column(5, 3);
Column co2 = new Column(2, 4);
Column co3 = new Column(4, 3);
Column co4 = new Column(2, 3);
Column co5 = new Column(4, 6);
Column[] arry = { co1, co2, co3, co4, co5 };
testArraySort(arry);
}
private static void testArraySort(Column[] arry) {
Column cnj;
// 利用冒泡排序
for (int i = 0; i < arry.length - 1; i++) {
for (int j = 0; j < arry.length - 1 - i; j++) {
cnj = arry[j];
if (arry[j + 1].getRadius() < cnj.getRadius()
|| (cnj.getRadius() == arry[j + 1].getRadius() && arry[j + 1].getH() < cnj.getH())) {
arry[j] = arry[j + 1];
arry[j + 1] = cnj;
}
}
}
// 打印输出
for (int i = 0; i < arry.length; i++) {
System.out.print("(" + arry[i].getRadius() + "," + arry[i].getH() + ") ");
}
}
}
文章插图
4效率晋升利用优化后的体例:
package com.sgg.test;
推荐阅读
- 虹之玉锦的养殖方法,掉叶子怎么办
- 怎么学会编曲?薛之谦和赵雷都不是音乐学院毕业,他们怎么学的乐理知识?
- 房屋装修全攻略之:厨卫吊顶
- 建议收藏 创业必备的基础之四:企业如人生,终局必知法律知识
- 100个法律常识|转需收藏
- 赤子之心下一句是什么赤子之心的意思是什么
- 英雄联盟 云顶之弈怎么查看别人战绩
- 崩坏三如何抽取理之律者
- 家庭斗争之风水解密
- 打完耳洞之后如何避免发炎?如果发炎怎么办?