免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Comparator用法

Comparator? 不同于 Comparable

java.util.Comparator

DEMO

----------------------------------------

Lake湖類

class Lake {
??? private String name = "淡水湖";
??? private String englishName = "lake";
??? private int area = 1;
???
??? public Lake(String n, String e, int a) {
??????? setName(n);
??????? setEnglishName(e);
??????? setArea(a);
??? }
???
??? public String getName() {
??????? return name;
??? }
??? public boolean setName(String n) {
??????? if(n != null && n.length() > 0) {
??????????? name = n;
??????????? return true;
??????? }
??????? return false;
??? }
??? public String getEnglishName() {
??????? return englishName;
??? }
??? public boolean setEnglishName(String e) {
??????? if(e != null && e.length() > 0) {
??????????? englishName = e;
??????????? return true;
??????? }
??????? return false;
??? }
??? public int getArea() {
??????? return area;
??? }
??? public boolean setArea(int a) {
??????? if(a >= 1 && a <= 10000) {
??????????? area = a;
??????????? return true;
??????? }
??????? return false;
??? }
???
??? public String toString() {
??????? return name + " (" + englishName + ", " + area + "平方公里)";
??? }
}
-----------------------

按大小排序

import java.util.Comparator;

class AreaComparator implements Comparator<Lake> {
??? public int compare(Lake k1, Lake k2) {
??????? return k1.getArea() - k2.getArea();
??? }
}

-----------------------

按名字排序

import java.util.Comparator;

class NameComparator implements Comparator<Lake> {
??? public int compare(Lake k1, Lake k2) {
??????? return k1.getEnglishName().compareTo(k2.getEnglishName());
??? }
}

-----------------------

測試類

import java.util.*;

class FiveLakes {
??? public static void main(String[] args) {
??????? ArrayList<Lake> lakes = new ArrayList<Lake>();
???????
??????? lakes.add(new Lake("洞庭湖", "Dongting Lake", 2820));
??????? lakes.add(new Lake("太湖", "Lake Thai", 2250));
??????? lakes.add(new Lake("巢湖", "Chao Lake", 775));
??????? lakes.add(new Lake("鄱陽湖", "Po-yang Lake", 3914));
??????? lakes.add(new Lake("洪澤湖", "Hung-tse Lake", 1577));
???????
??????? Collections.sort(lakes, new NameComparator());
??????? System.out.println("我國的五大淡水湖, 按\"英文名稱\"[升序]排列如下:");
??????? for(int i = 0; i < 5; i++) {
??????????? System.out.println(i+1 + ". " + lakes.get(i));
??????? }
???????
??????? System.out.println();
??????? Collections.sort(lakes, new AreaComparator());
??????? Collections.reverse(lakes);
??????? System.out.println("我國的五大淡水湖, 按湖水面積[降序]排列如下:");
??????? for(int i = 0; i < 5; i++) {
??????????? System.out.println(i+1 + ". " + lakes.get(i));
??????? }
??? }
}

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Jjava中文漢字排序
java list 排序 - gnrwaxlfa的日志
Java Puzzlers(6)類庫之迷
Java中Comparable與Comparator的區(qū)別
java輸出顏色代碼
Java多態(tài)的實現
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服