使用List集合——ArrayList、LinkedList、Vector || 进行把图书的价格按照冒泡排序的方式,从小到大进行排序

ListExercise02.java

package com.dym.list_;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Vector;

public class ListExercise02 {
    public static void main(String[] args) {
        //List list = new ArrayList();
        //List list = new Vector();
        List list = new LinkedList();

        list.add(new Book("止小兮","dym", (double) 1000));
        list.add(new Book("红楼梦","曹雪芹", (double) 100));
        list.add(new Book("西游记","吴承恩", (double) 10));
        list.add(new Book("水浒传","施耐庵", (double) 9));
        list.add(new Book("三国义","罗贯中", (double) 80));

        //遍历
       bianli(list);

        //冒泡排序
        sort(list);

        System.out.println("*********排序后*************");

        //遍历
        bianli(list);
    }
    //遍历
    public static void bianli(List list){

        for (Object o :list) {
            System.out.println(o);
        }
    }
    //静态方法
    //如何对集合进行排序
    //价格要求是从小到大
    public static void sort(List list){
        int listSize=list.size();
        for (int i = 0; i <listSize-1 ; i++) {
            for (int j = 0; j <listSize-1-i ; j++) {
                //取出对象Book
                Book book1= (Book) list.get(j);
                Book book2= (Book) list.get(j+1);
                if(book1.getPrice()>book2.getPrice()){
                    list.set(j,book2);
                    list.set(j+1,book1);
                }
            }
        }
    }
}

class Book{
    private String name;
    private String author;
    private Double price;

    public Book(String name, String author, Double price) {
        this.name = name;
        this.author = author;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public Double getPrice() {
        return price;
    }

    public void setPrice(Double price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "名称:" + name + "\t\t价格:" + price + "\t\t作者:"+author;
    }
}

猜你喜欢

转载自blog.csdn.net/qq_39368007/article/details/115277559