主要记录Comparator Comparable这两个类的使用:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class T {
public static void main(String[] args) {
List<A> list = new ArrayList<A>();
A a1 = new A();
a1.setFlag(1);
A a2 = new A();
a2.setFlag(4);
A a3 = new A();
a3.setFlag(2);
A a4 = new A();
a4.setFlag(3);
list.add(a1);
list.add(a2);
list.add(a3);
list.add(a4);
for(A a:list){
System.out.println(a.getFlag());
}
System.out.println("--------------");
Collections.sort(list,new Comparator<A>() {
@Override
public int compare(A o1, A o2) {
return o1.flag>o2.flag?1:-1;
}
});
for(A a:list){
System.out.println(a.getFlag());
}
Collections.sort(list);
for(A a:list){
System.out.println(a.getFlag());
}
}
}
class A implements Comparable<A>{
int flag;
String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getFlag() {
return flag;
}
public void setFlag(int flag) {
this.flag = flag;
}
@Override
public int compareTo(A o) {
return this.flag>o.flag?-1:1;
}
}
分享到:
相关推荐
本项目是使用Java语言开发的一个简易词典,它提供了基本的单词查询功能以及联想查询,能够帮助用户快速查找和学习词汇。 1. **Eclipse集成开发环境**: Eclipse是Java开发中常用的IDE(集成开发环境),具有代码...
【标题】"用Java开发的QQ"项目是一个利用Java编程语言实现的简易即时通讯软件,类似于我们熟知的腾讯QQ。这个项目展示了Java在构建类似应用中的能力,虽然规模较小,但核心功能得以体现,为学习者提供了一个有趣的...
在这个“Android上的SQLite简易使用程序”中,我们将深入探讨如何在Android应用中集成SQLite,进行数据的插入、查询和列表展示。 1. **SQLiteOpenHelper**: 首先,我们需要创建一个继承自`SQLiteOpenHelper`的类,...
在本毕业设计项目中,学生将利用Java技术实现一个简易的搜索引擎,该搜索引擎结合了Lucene库的强大功能,旨在提供高效、便捷的文件检索服务。以下是这个项目的主要知识点及其详细说明: 1. **搜索引擎基础**:搜索...
《Java++小型游戏项目》是一个基于Java编程语言开发的简易游戏项目,包含了完整的源代码和相关文档,旨在为初学者和爱好者提供一个实践平台,学习并掌握Java编程和游戏开发的基础知识。该项目不仅是一个娱乐工具,更...
【简易的通讯录】是一个基于Java Web技术的项目,它采用了经典的三层架构设计,包括表现层(jsp)、业务逻辑层和服务层。这个通讯录系统利用了MySQL作为后端数据库,存储用户的数据,如联系人姓名、电话号码和电子...
Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型 封装类 boolean Boolean char Character ...
【PowerBuilder简易彩票数据分析软件源码】是一款基于PowerBuilder开发的彩票数据分析工具,它主要用于帮助彩票爱好者和专业分析人员对彩票数据进行深度挖掘和统计分析。PowerBuilder是一种强大的客户端/服务器应用...
RequestQueue维护了一个工作队列,将请求按照优先级排序并分发到不同的工作线程。 2. **NetworkDispatcher**:处理网络请求的实际执行者,它会从RequestQueue中取出请求,通过HttpStack(如HurlStack)进行网络I/O...
这可能涉及GUI(图形用户界面)编程,比如使用Tkinter(Python的内置库)、Java的Swing或JavaFX,或者Qt(跨平台的C++库)。界面应包含开始摇奖、显示结果等功能按钮,以及结果显示区域,清晰地展示出7个中奖数字。 ...
它内置了Tomcat服务器,提供了一系列默认配置,使得开发者可以快速启动和运行一个Java web应用。SpringBoot的主要特点包括: 1. **快速起步**:通过`@SpringBootApplication`注解,SpringBoot会自动配置相关的bean...
【图书管理系统_jsp_mysql】是一个基于JavaServer Pages (JSP)技术和MySQL数据库构建的简易图书管理系统。这个系统展示了如何在Web开发中结合后端编程语言和数据库技术来管理图书信息。接下来,我们将深入探讨其中...
可以使用各种命令进行遍历、筛选、排序等操作。 ### 2.7 Processing Dictionary Table 字典表是SAP系统中预定义的数据库表,可以使用ABAP直接访问。处理字典表涉及使用SELECT语句和关联操作,以获取或更新数据。 #...
在JSP中,可以使用内置对象如`session`来跟踪已登录的用户状态。 2. **商品查询**:商品查询功能允许用户通过关键字、类别或其他属性搜索产品。这需要一个后台数据库存储商品信息,并使用SQL查询语句来筛选和返回...
【新闻管理系统(jsp全代码)】是一个基于JavaServer Pages(JSP)技术开发的简易新闻发布与管理系统。这个系统提供了一种基础的方式,用于在线创建、编辑和管理新闻内容,适用于初学者学习JSP编程或者小型网站的...
2. 论坛模块:包括帖子列表展示,按照时间、热度等排序,支持搜索功能。 3. 帖子模块:用户可以创建新帖子,编辑和删除自己的帖子,每个帖子有独立的详情页面,展示帖子内容和评论。 4. 评论模块:用户可以在帖子下...
【标题】"个人数据库简陋系统 myeclipse ssql server" 涉及的主要知识点是使用MyEclipse开发基于SQL Server的简易数据库系统,并且该系统应用于在线答疑平台。 【描述】提到的内容揭示了以下几个核心点: 1. **...
此外,还会介绍如何使用Ireport内置的参数和变量来实现动态数据处理。 报表元素是Ireport的核心,手册会详细介绍文本框、表格、图表、图像、子报表等各种元素的添加、编辑和格式化方法。对于图表,会讲解如何创建...