CUMT-----Java课后第八章编程作业

文章目录

    • [1. 题目描述](#1. 题目描述)
    • [2. 代码编写](#2. 代码编写)
    • [3. 运行截图](#3. 运行截图)

1. 题目描述

(1)定义一个Book类并能根据价格进行比较。(2)创建一个泛型集合存放图书,对图书进行排序并输出。

2. 代码编写

java 复制代码
package CumtJava;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
class Book implements Comparable<Book> {
    private String title;
    private double price;

    public Book(String title, double price) {
        this.title = title;
        this.price = price;
    }

    public String getTitle() {
        return title;
    }

    public double getPrice() {
        return price;
    }

    @Override
    public int compareTo(Book other) {
        // 对价格进行比较,实现降序排序(从高到低)
        if (this.price > other.price) {
            return -1;
        }
        else if (this.price < other.price) {
            return 1;
        }
        else {
            return 0;
        }
    }
}
java 复制代码
package CumtJava;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class BookSortExample {
    public static void main(String[] args) {
        List<Book> books = new ArrayList<>(); //集合
        books.add(new Book("Book1", 25.0));
        books.add(new Book("Book2", 15.0));
        books.add(new Book("Book3", 30.0));
        books.add(new Book("Book4", 20.0));

        // 对图书列表进行排序
        Collections.sort(books);

        // 输出排序后的图书列表
        for (Book book : books) {
            System.out.println("Title: " + book.getTitle() + ", Price: " + book.getPrice());
        }
    }
}

3. 运行截图

相关推荐
Hx_Ma1617 小时前
前台模块以及分页逻辑
java·开发语言
亓才孓17 小时前
AspectJ和SpringAOP的区别
java·开发语言
大鹏说大话17 小时前
破局单体瓶颈:SQLParser 解析器的分层架构重构实战
开发语言
tod11317 小时前
C++ 核心知识点全解析(八)
开发语言·c++·面试经验
Ljwuhe18 小时前
C++类与对象(上)
开发语言·c++
十启树18 小时前
QGis开发环境部署
开发语言·gis·qgis
亚比囧18 小时前
Java基础--面向对象(二)
java·开发语言
乐观勇敢坚强的老彭18 小时前
c++寒假营day05
开发语言·c++·算法
枫叶丹418 小时前
【Qt开发】Qt界面优化(七)-> Qt样式表(QSS) 样式属性
c语言·开发语言·c++·qt