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. 运行截图

相关推荐
Nebula_g2 分钟前
云禾外卖补充—项目整体后端运行逻辑-对流程的更深层次理解
java·开发语言·网络·数据库·状态模式·javase
萧瑟余晖3 分钟前
Spring Security 6.x新特性与架构演进详解
java·spring·架构
\光辉岁月/9 分钟前
1.Object类
java·面向对象·object类
鸽鸽程序猿20 分钟前
【项目】【在线判题系统】公共功能
java·spring boot·maven
一只笨菜鸟28 分钟前
IDEA如何让多个项目同时显示
java·ide·intellij-idea
程序猿乐锅31 分钟前
【从0-1学习Python | 第六篇】 Python 函数:定义、参数与返回值
开发语言·python·学习
G018_star sky♬33 分钟前
java中的字符串常见方法
java·开发语言
熊猫钓鱼>_>35 分钟前
Kotlin Multiplatform for OpenHarmony 实战:kotlinx-serialization JSON 适配
开发语言·华为·kotlin·华为云·json·harmonyos·code
.Bryce.2 小时前
你了解 Blackboard(黑板系统)吗?听说过基于黑板系统实现的智能体吗?
java·网络·gpt·php·agent·codex·黑板系统
银河技术2 小时前
从脚本到 Operator:用 Go 构建可靠的微服务自动扩缩容控制器
开发语言·微服务·golang