中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

建設網(wǎng)站一般要多錢sem工作內(nèi)容

建設網(wǎng)站一般要多錢,sem工作內(nèi)容,wordpress給指定用戶設置角色,制作網(wǎng)站專業(yè)公司哪家好一、概述 Comparable和Comparator都是用來實現(xiàn)比較的,一般用于集合中元素的比較 基本包裝類型,Integer、Long以及String都實現(xiàn)了Comparable接口,該接口的排序邏輯必須寫在比較對象中,所以又叫自然排序 我們一般集合排序使用的Col…

一、概述

Comparable和Comparator都是用來實現(xiàn)比較的,一般用于集合中元素的比較
基本包裝類型,Integer、Long以及String都實現(xiàn)了Comparable接口,該接口的排序邏輯必須寫在比較對象中,所以又叫自然排序
我們一般集合排序使用的Collections.sort(),默認使用的就是Comparable

 public static <T extends Comparable<? super T>> void sort(List<T> list) {list.sort(null);}

當然,我們也可以指定比較器,這里使用的就是Comparator了

 public static <T> void sort(List<T> list, Comparator<? super T> c) {list.sort(c);}

二、實際使用

1、Comparable

定義了對象Forlan,實現(xiàn)了Comparable接口,重寫了compareTo(對象)方法

public class Forlan implements Comparable<Forlan> {private String name;/*** 身高*/private int height;/*** 體重*/private int weight;public Forlan(String name, int height, int weight) {this.name = name;this.height = height;this.weight = weight;}@Overridepublic String toString() {return "Forlan{" +"name='" + name + '\'' +", height=" + height +", weight=" + weight +'}';}/*** 比較身高*/@Overridepublic int compareTo(Forlan forlan) {return this.height - forlan.height;}
}

驗證比較器

List<Forlan> list = new ArrayList<>();
Forlan forlan1 = new Forlan("身高低,體重中", 170, 130);
Forlan forlan2 = new Forlan("身高高,體重低", 180, 120);
Forlan forlan3 = new Forlan("身高中,體重高", 175, 140);
list.add(forlan1);
list.add(forlan2);
list.add(forlan3);
Collections.sort(list);
System.out.println(list);// 運行結(jié)果
[Forlan{name='身高低,體重中', height=170, weight=130}, Forlan{name='身高中,體重高', height=175, weight=140}, Forlan{name='身高高,體重低', height=180, weight=120}]

2、Comparator

定義了對象ForlanW,實現(xiàn)了Comparator接口,重寫了compare(T o1, T o2)方法

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;public class ForlanW implements Comparator<ForlanW>{private String name;/*** 身高*/private int height;/*** 體重*/private int weight;public ForlanW(String name, int height, int weight) {this.name = name;this.height = height;this.weight = weight;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getHeight() {return height;}public void setHeight(int height) {this.height = height;}public int getWeight() {return weight;}public void setWeight(int weight) {this.weight = weight;}@Overridepublic String toString() {return "ForlanComparator{" +"name='" + name + '\'' +", height=" + height +", weight=" + weight +'}';}@Overridepublic int compare(ForlanW o1, ForlanW o2) {return o1.height - o2.height;}public static void main(String[] args) {List<ForlanW> list = new ArrayList<>();ForlanW forlan1 = new ForlanW("身高低,體重中", 170, 130);ForlanW forlan2 = new ForlanW("身高高,體重低", 180, 120);ForlanW forlan3 = new ForlanW("身高中,體重高", 175, 140);list.add(forlan1);list.add(forlan2);list.add(forlan3);// Collections.sort(list, new HeightComparator()); // 身高比較// Collections.sort(list, new WeightComparator()); // 體重比較// 身高比較Collections.sort(list, (ForlanW o1, ForlanW o2) -> {return o1.height - o2.height;});System.out.println(list);}
}class HeightComparator implements Comparator<ForlanW> {@Overridepublic int compare(ForlanW o1, ForlanW o2) {return o2.getHeight() - o1.getHeight();}
}class WeightComparator implements Comparator<ForlanW> {@Overridepublic int compare(ForlanW o1, ForlanW o2) {return o2.getWeight() - o1.getWeight();}
}

驗證比較器

List<ForlanComparator> list = new ArrayList<>();
ForlanComparator forlan1 = new ForlanComparator("身高低,體重中", 170, 130);
ForlanComparator forlan2 = new ForlanComparator("身高高,體重低", 180, 120);
ForlanComparator forlan3 = new ForlanComparator("身高中,體重高", 175, 140);
list.add(forlan1);
list.add(forlan2);
list.add(forlan3);
// Collections.sort(list, new HeightComparator()); // 身高比較
// Collections.sort(list, new WeightComparator()); // 體重比較
// 身高比較
Collections.sort(list,(ForlanComparator o1, ForlanComparator o2)->{return o1.height - o2.height;
});
System.out.println(list);// 運行結(jié)果
[ForlanComparator{name='身高低,體重中', height=170, weight=130}, ForlanComparator{name='身高中,體重高', height=175, weight=140}, ForlanComparator{name='身高高,體重低', height=180, weight=120}]

三、總結(jié)

1、相同點

Comparable和Comparator都是用于比較排序

2、不同點

  • 接口所在包不同:java.lang.Comparable、java.util.Comparator
  • 比較邏輯不同:Comparable的在類中,Comparator可以在類中,也可以在類外,但在類中意義不大(簡單來說,Comparable是內(nèi)部比較器,Comparator是外部比較器)
  • 排序方法不同:Comparable重寫方法compareTo(T o),Comparator重寫方法compare(T o1, T o2)
  • 在Collections.sort()中使用不同:一個參數(shù),默認是Comparable自然排序,二個參數(shù),需要傳入Comparator外部排序
  • 排序規(guī)則數(shù)量限制不同:Comparable唯一,Comparator可以有多個
http://www.risenshineclean.com/news/27173.html

相關文章:

  • 南通網(wǎng)站建設規(guī)劃成都網(wǎng)絡營銷公司哪家好
  • 網(wǎng)站優(yōu)化要怎么做seo做什么網(wǎng)站賺錢
  • 網(wǎng)站不足之處人民網(wǎng)疫情最新消息
  • 麻城做網(wǎng)站做一個網(wǎng)站需要什么
  • 知名的電子商務網(wǎng)站紹興seo公司
  • 斗破蒼穹制作公司seo關鍵詞排名優(yōu)化官網(wǎng)
  • b2b網(wǎng)站建設怎么做大學生網(wǎng)絡營銷策劃方案書
  • 建設銀行網(wǎng)站網(wǎng)頁丟失口碑營銷的優(yōu)勢有哪些
  • 畢業(yè)設計做企業(yè)門戶網(wǎng)站今日新聞頭條大事
  • 重慶國外網(wǎng)站推廣企業(yè)為何選擇網(wǎng)站推廣外包?
  • 網(wǎng)站建設石家莊百度人工申訴客服電話
  • 做彩票的網(wǎng)站嗎中國企業(yè)網(wǎng)
  • 網(wǎng)站搭建教程導航類快速排名新
  • 如何網(wǎng)站做外貿(mào)生意廈門seo關鍵詞
  • flash網(wǎng)站設計商丘 峰少 seo博客
  • 怎么做地區(qū)網(wǎng)站林哥seo
  • 銀川哪家網(wǎng)站建設專業(yè)湖南平臺網(wǎng)站建設制作
  • 軟件測試自學網(wǎng)站考證培訓機構(gòu)報名網(wǎng)站
  • 專門做玉的網(wǎng)站企業(yè)網(wǎng)站的在線推廣方法有
  • 做網(wǎng)站公司深圳seo優(yōu)化服務價格
  • 武漢app開發(fā)靠譜的公司湖北網(wǎng)站seo策劃
  • 網(wǎng)站被收錄要怎么做電腦培訓網(wǎng)上課程
  • 網(wǎng)站建設叁金手指花總1百度河南代理商
  • 建設摩托車站長seo查詢工具
  • 弱電網(wǎng)站源碼小視頻網(wǎng)站哪個可以推廣
  • 黃村網(wǎng)站建設費用線上渠道推廣有哪些方式
  • 網(wǎng)站登錄頁模板微商營銷技巧
  • dedecms 如何關閉網(wǎng)站搜狗站長
  • 微信公眾號h5商城網(wǎng)站開發(fā)網(wǎng)站建設及網(wǎng)站推廣
  • 惡意網(wǎng)站是怎么實現(xiàn)的seo優(yōu)化員