资讯详情

Java中如何在Arraylist中实现冒泡排序的问题

众所周知,冒泡排序法在一般数组中只有三步,

1 if(a

然而,在集合中并不是一个简单的交换,因为在交换之后,必须确保新的值被重置到集合中。那么难吗?事实上,这更简单:

1 if(a

原则或交换,但不需要媒体temple 了。

具体代码见下:

*********************工人类**********************

package com.xtkj.worker;

public class Worker{

int id;

String name;

int age;

double salary;

public Worker(){} //构造方法

public Worker(int id,String name, int age,double salary ) {

this.id = id;

this.name = name;

this.age = age;

this.salary = salary;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public double getSc() {

return salary;

}

public void setSc(double salary) {

this.salary = salary;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public Worker getNext(){

return this.getNext();

}

}

*******************方法类(这里只解释泡沫排序)***************

package com.xtkj.worker;

import Java.util.ArrayList;

import java.util.List;

import java.util.Scanner;

public class Method {

public static List workerlist = new ArrayList();

///按工资由高到低排序

double temp;

double a=0;

double b=0;

void sort(){

System.out.println("员工工资由高到低的结果如下:");

for(int i=0;i

for(int j=0;j

a=workerlist.get(j).getSc();

b=workerlist.get(j 1).getSc();

if(a

// temp=a;

workerlist.get(j).setSc(b); //注意:这里设置值集中

// a=b;

workerlist.get(j 1).setSc(a); //简单的 a与b 交换只是从集合中取出的结果,集合中的元素没有改变

// b=temp;

}

}

}

}

*****************界面类(测试类)**********************

package com.xtkj.worker;

import java.util.Scanner;

public class Main {

/**

* @param args

*/

public static void main(String[] args) {

Method method = new Method();

boolean b = true;

while(b){

System.out.println();

System.out.println("*********************欢迎进入员工薪水管理系统***********************");

System.out.println("请选择以下操作:");

System.out.println("1.增加新员工");

System.out.println("2.查询员工信息");

System.out.println("3.显示所有员工信息");

System.out.println("4.修改员工工资");

System.out.println("5.删除员工信息");

System.out.println("6.工资由低到高排列");

System.out.println("7.统计员工平均工资和最低工资");

System.out.println("8.退出系统");

Scanner reader=new Scanner(System.in );

System.out.println("请输入功能:");

int ab = reader.nextInt();

switch(ab)

{

case 1:

method.add();

break;

case 2:

method.find();

break;

case 3:

method.showAll();

break;

case 4:

method.updatesal();

break;

case 5:

method.delete();

case 6:

method.sort();

break;

case 7:

method.statics();

break;

case 8:

System.out.println("退出员工工资管理系统!");

b = false;

}

}

Worker wr=new Worker();

}

}

运行结果如下:

3a0984e34d3138dc0810eb051634f619.png

标签: xtkj智能传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

 锐单商城 - 一站式电子元器件采购平台  

 深圳锐单电子有限公司