java Collections.binarySearch 用法
package testCollections; import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List; /**
* @Author: zhilei.wang
* @Date: 2019/11/11 14:08
* @Version 1.0
*/
public class TestCollection {
public static void main(String[] args) {
Student s1 = new Student("Alex", 10);
Student s2 = new Student("Jerry", 20);
Student s3 = new Student("Hustoy", 40); List<Student> students = new ArrayList<>();
students.add(s1);
students.add(s2);
students.add(s3); // Collections.sort(students); // int searchResult = Collections.binarySearch(students, new Student("Jerry", 20));
int alex = Collections.binarySearch(students, new Student("Jerry", 20), new Comparator<Student>() {
@Override
public int compare(Student o1, Student o2) {
//int num = this.age - o.age;
int num = o1.getAge() - o2.getAge();
int num1 = (num == 0 ? o1.getUsername().compareTo(o2.getUsername()) : num);
return num1;
}
}); System.out.println(alex); }
} class Student /*implements Comparable<Student> */ {
private String username;
private int age; public Student(String username, int age) {
this.username = username;
this.age = age;
} public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} /*
@Override
public int compareTo(Student o) {
int num = this.age - o.age;
int num1 = (num == 0 ? this.username.compareTo(o.username) : num);
return num1;
} */ }
java Collections.binarySearch 用法的更多相关文章
- JAVA中ArrayList用法
JAVA中ArrayList用法 2011-07-20 15:02:03| 分类: 计算机专业 | 标签:java arraylist用法 |举报|字号 订阅 Java学习过程中做题时 ...
- Java Collections API和泛型
Java Collections API和泛型 数据结构和算法 学会一门编程语言,你可以写出一些可以工作的代码用计算机来解决一些问题,然而想要优雅而高效的解决问题,就要学习数据结构和算法了.当然对数据 ...
- JAVA Collections常用方法
/* 集合框架的工具类 Collections: */ import java.util.*; class Test { public static void main(String [] args) ...
- 21个Java Collections面试问答
Java Collections框架是Java编程语言的核心API之一. 这是Java面试问题的重要主题之一.在这里,我列出了一些重要的Java集合面试问题和解答,以帮助您进行面试.这直接来自我14年 ...
- 用斗地主的实例学会使用java Collections工具类
目录 一.背景 二.概念 1.定义 2.方法 2.1.排序方法 2.2.查找/替换方法 三.斗地主实例 3.1.代码结构 3.2.常量定义 3.3.单只牌类 3.4.玩家类 3.5.主程序 四.深入理 ...
- JAVA的continue用法
JAVA的continue用法: public class test{ public static void main(String [] args){ for(int i=0;i<=10;i ...
- Java Spring AOP用法
Java Spring AOP用法 Spring AOP Java web 环境搭建 Java web 项目搭建 Java Spring IOC用法 spring提供了两个核心功能,一个是IoC(控制 ...
- Java Spring IOC用法
Java Spring IOC用法 Spring IoC 在前两篇文章中,我们讲了java web环境搭建 和 java web项目搭建,现在看下spring ioc在java中的运用,开发工具为In ...
- 四种Java线程池用法解析
本文为大家分析四种Java线程池用法,供大家参考,具体内容如下 http://www.jb51.net/article/81843.htm 1.new Thread的弊端 执行一个异步任务你还只是如下 ...
随机推荐
- Docker追加容器端口映射
参考文章: https://blog.csdn.net/chouzhou9701/article/details/86725203
- Cloudera-JDBC-Driver-for-Apache-Hive
Cloudera-JDBC-Driver-for-Apache-Hive-Install-Guide.pdf https://github.com/FlowerBirds/flowerbirds.gi ...
- RESR API (三)之Views
Class-based Views Django's class-based views are a welcome departure from the old-style views. - Rei ...
- pyinstaller如何将自己写的模块一并打包到exe中
使用pyinstaller命令 pyinstaller -F main.py 打包时,若mian.py代码中存在引入自己写的模块,而打包成exe文件时,并不会自动引入自己写的模块,打包成功后,点击打开 ...
- 【MM系列】SAP 通过原材料找到成品的函数
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 通过原材料找到成品的函数 ...
- 用WebService实现对数据库进行操作(添加+删除+修改)(转)
转自:http://blog.csdn.net/beyondqd/article/details/6703169 表为User,字段有 编号: int id,用户名:string UserName,密 ...
- argparse命令行传参
import argparse parser = argparse.ArgumentParser(description='manual to this script') # 创建解析器,及其描述 p ...
- 四、Zabbix-zabbix agent部署
1.添加zabbix安装源 rpm -i http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch ...
- [19/06/05-星期三] CSS基础_样式表的位置(内联、内部、外部样式)、块元素(div)、内联元素(span)、常用的选择器
一.概念 CSS(Cascading Style Sheets,层叠样式表) 可以用来为网页创建样式表,通过样式表可以对网页进行装饰. 所谓层叠,就是可以将整个网页想象成是一层一层的结构,层次高的将会 ...
- Python 内置函数super
super()函数是用于调用父类/超类的一个方法 super是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没有问题,但是如果使用多继承,会涉及到查找顺序(MRO),重复调用(钻石继 ...