您的位置:首页 > 编程语言 > Java开发

冒泡排序:成绩从低到高排序(JAVA)

2018-01-05 16:03 155 查看
冒泡排序:

JAVA语言提供了List接口,表示元素可以重复的一个广义线性表。

具体实现类:ArrayList,是长度可变的数组。

具体代码如下:

public class student {
private String name;
private int age;
private double grade;
public student(String name,int age,double grade) {
this.name=name;
this.age=age;
this.grade=grade;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public double getGrade() {
return grade;
}
}

import java.util.ArrayList;
import java.util.List;

public class studentclass {

private List<student>stuList;
private int size;

public studentclass() {
size=0;
stuList=null;
}
public void createclass() {
String names[]= {"张三","王五","李四","赵六","孙琦"};
double grades[]= {89,90,78,85,73};
int ages[]= {17,20,17,18,19};
size=names.length;
stuList=new ArrayList<student>();
student temp;
for(int i=0;i<size;i++) {
temp=new student(names[i],ages[i],grades[i]);
stuList.add(temp);
}
}
public void sort() {
student temp;
for(int i=0;i<size;i++) {
for(int j=1;j<size-i;j++) {
if(stuList.get(j-1).getGrade()>stuList.get(j).getGrade()) {
temp=stuList.get(j-1);
stuList.set(j-1,stuList.get(j));
stuList.set(j, temp);
}
}
}
}
public String output() {
StringBuilder studentInfo=new StringBuilder();
for(student stu:stuList) {
studentInfo.append("姓名:"+stu.getName()+"\t成绩:"+stu.getGrade()+"\r\n");
}
return studentInfo.toString();
}
}


测试类
public class test {

public static void main(String[] args) {

studentclass sclass=new studentclass();
sclass.createclass();
System.out.println("原始序列:");
System.out.println(sclass.output());
sclass.sort();
System.out.println("数组冒泡排序结果:");
System.out.println(sclass.output());
}
}运行结果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: