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

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)站如何優(yōu)化排名百度高級(jí)搜索頁(yè)面

網(wǎng)站如何優(yōu)化排名,百度高級(jí)搜索頁(yè)面,如何建立一個(gè)網(wǎng)站支持chrome,php 5.6 wordpress文章目錄 前言一、基本類型比較1.2.equals3.和equals的區(qū)別 二、對(duì)象的比較1.覆寫(xiě)基類的equals2.基于Comparable接口類的比較3.基于Comparator比較器比較4.三種方式對(duì)比 前言 在Java中,基本類型的對(duì)象可以直接比較,而自定義類型,默認(rèn)是用equ…

文章目錄

  • 前言
  • 一、基本類型比較
    • 1.==
    • 2.equals
    • 3.==和equals的區(qū)別
  • 二、對(duì)象的比較
    • 1.覆寫(xiě)基類的equals
    • 2.基于Comparable接口類的比較
    • 3.基于Comparator比較器比較
    • 4.三種方式對(duì)比


前言

在Java中,基本類型的對(duì)象可以直接比較,而自定義類型,默認(rèn)是用equal方法,但是它沒(méi)有比較引用變量引用對(duì)象的內(nèi)容,而是直接比較引用變量的地址,本文記錄了解決該問(wèn)題的幾種方法。


一、基本類型比較

基本數(shù)據(jù)類型,一般可以使用==直接比較,字符串String類型可以使用equal進(jìn)行比較。

1.==

作用:
(1)用于基本數(shù)據(jù)類型的比較;
(2)判斷引用是否指向堆內(nèi)存的同一塊地址。

2.equals

作用:
用于引用類型,在默認(rèn)情況下,比較引用類型的內(nèi)存地址是否相等;也可以根據(jù)需求,重寫(xiě)equals方法。

Object類equals()方法源碼:

在這里插入圖片描述

String類equals()方法源碼:
在這里插入圖片描述

3.==和equals的區(qū)別

對(duì)于引用類型,==會(huì)直接比較引用的地址,而用equals則比較的是引用的內(nèi)容。
在這里插入圖片描述

二、對(duì)象的比較

1.覆寫(xiě)基類的equals

缺點(diǎn):equals只能按照相等進(jìn)行比較,不能按照大于、小于的方式進(jìn)行比較。
如下重寫(xiě)equals方法,只能對(duì)年齡或者名字按照相等的方式比較。
代碼如下(示例):

import java.util.Objects;class Student {public String name;public int age;public Student(String name, int age) {this.name = name;this.age = age;}@Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == null || getClass() != o.getClass()) return false;Student student = (Student) o;return Objects.equals(name, student.name);}@Overridepublic int hashCode() {return Objects.hash(name);}
}
public class Demo {public static void main(String[] args) {Student s1 = new Student("王一", 20);Student s2 = new Student("金木", 19);System.out.println(s1.equals(s2));}
}

2.基于Comparable接口類的比較

Comparable是jdk提供的泛型的比較接口類,源碼實(shí)現(xiàn)具體如下:

public interface Comparable<T> {public int compareTo(T o);
}

Comparable是java.lang中的接口類,可以直接使用。
如下,自定義Student類,通過(guò)實(shí)現(xiàn)Comparable接口并重寫(xiě)compareTo方法,通過(guò)年齡對(duì)Student類的大小進(jìn)行比較。

import java.util.Objects;class Student implements Comparable<Student> {public String name;public int age;public Student(String name, int age) {this.name = name;this.age = age;}@Overridepublic int compareTo(Student o) {if (o == null) return 1;return this.age - o.age;}
}
public class ComparatorDemo {public static void main(String[] args) {Student s3 = new Student("小王", 19);Student s4 = new Student("小劉", 22);System.out.println(s3.compareTo(s4)); //小于0 表示s3.age < s4.age}
}

3.基于Comparator比較器比較

步驟:
(1)用戶自定義比較器類,實(shí)現(xiàn)Comparator接口;
(2)覆寫(xiě)Comparator中的compare方法。

interface Comparator<Dog> {int compare(Dog o1, Dog o2);
}
class Dog {public int age;public String name;public Dog(int age, String name) {this.age = age;this.name = name;}
}class AgeComparator implements Comparator<Dog> {@Overridepublic int compare(Dog o1, Dog o2) {if (o1 == o2) return 0;if (o1 == null) return -1;if (o2 == null) return 1;return o1.age - o2.age;}
}class NameComparator implements Comparator<Dog> {@Overridepublic int compare(Dog o1, Dog o2) {if (o1 == o2) return 0;if (o1 == null) return -1;if (o2 == null) return 1;return o1.name.compareTo(o2.name);}
}
public class ComparatorDemo {public static void main(String[] args) {Dog dog1 = new Dog(3, "aba");Dog dog2 = new Dog(2, "aaa");Dog dog3 = new Dog(3, "acd");//年齡比較器AgeComparator ageComparator = new AgeComparator();//名字比較器NameComparator nameComparator = new NameComparator();System.out.println(ageComparator.compare(dog1,dog2)); //>0,表示dog1.age > dog2.ageSystem.out.println(nameComparator.compare(dog1, dog3)); //}
}

4.三種方式對(duì)比

覆寫(xiě)的方法說(shuō)明
Object.equals由于所有類都繼承自O(shè)bject,所以直接覆寫(xiě)即可,但只能比較相等與否
Comparable.compareTo需要手動(dòng)實(shí)現(xiàn)接口,侵入性較強(qiáng),一旦實(shí)現(xiàn),每次用該類都有順序,屬于內(nèi)部順序
Comparator.compare需要實(shí)現(xiàn)一個(gè)比較器對(duì)象,對(duì)待比較類的侵入性弱,但對(duì)算法代碼實(shí)現(xiàn)侵入性強(qiáng)
http://www.risenshineclean.com/news/59802.html

相關(guān)文章:

  • wordpress建站要用模板嗎企業(yè)網(wǎng)站seo診斷工具
  • 做不銹鋼網(wǎng)站網(wǎng)絡(luò)營(yíng)銷ppt講解
  • 電子商務(wù)網(wǎng)站建設(shè)的成本分析如何做營(yíng)銷活動(dòng)
  • 怎么看別人網(wǎng)站怎么做的優(yōu)化經(jīng)典軟文案例100例簡(jiǎn)短
  • 建設(shè)銀行網(wǎng)站百度一下百度平臺(tái)app下載
  • SEO優(yōu)化之如何做網(wǎng)站URL優(yōu)化sem廣告
  • last login wordpress貴港seo關(guān)鍵詞整站優(yōu)化
  • wordpress電影插件seo還有哪些方面的優(yōu)化
  • 龍巖網(wǎng)站設(shè)計(jì)培訓(xùn)百度推廣一個(gè)點(diǎn)擊多少錢
  • 中英文切換網(wǎng)站怎么做線上銷售水果營(yíng)銷方案
  • 批量上傳產(chǎn)品WordPress百度seo最成功的優(yōu)化
  • 網(wǎng)站關(guān)鍵詞優(yōu)化排名網(wǎng)頁(yè)設(shè)計(jì)框架圖
  • 網(wǎng)絡(luò)推廣公司盈利模式seo分析師招聘
  • 各大搜索引擎提交網(wǎng)站入口大全網(wǎng)站的營(yíng)銷推廣
  • 如何做好網(wǎng)站管理工作女教師遭網(wǎng)課入侵視頻大全
  • 寧波建筑公司排名無(wú)錫seo
  • 網(wǎng)頁(yè)網(wǎng)站制作公司學(xué)電腦辦公軟件培訓(xùn)班
  • 之力seo網(wǎng)站關(guān)鍵詞優(yōu)化工具
  • 苗木網(wǎng)站模板seo管理軟件
  • 義烏商城集團(tuán)的網(wǎng)站建設(shè)站長(zhǎng)之家ip地址查詢
  • 廣州建外貿(mào)網(wǎng)站什么企業(yè)需要網(wǎng)絡(luò)營(yíng)銷和網(wǎng)絡(luò)推廣
  • 樂(lè)云seo網(wǎng)站建設(shè)公司seo搜索引擎優(yōu)化就業(yè)前景
  • 什么網(wǎng)站專做二手名表做關(guān)鍵詞優(yōu)化的公司
  • 佛山精品網(wǎng)站建設(shè)優(yōu)化大師官方正版下載
  • 手機(jī)網(wǎng)站制作費(fèi)用百度指數(shù)數(shù)據(jù)分析平臺(tái)入口
  • 便宜網(wǎng)站建設(shè)模板網(wǎng)站谷歌排名查詢
  • 手機(jī)頁(yè)面模板站長(zhǎng)工具seo優(yōu)化
  • 家居在線設(shè)計(jì)平臺(tái)seo優(yōu)化報(bào)價(jià)
  • 邯鄲市建設(shè)局網(wǎng)站材料下載入口北京seo方法
  • 南京建設(shè)監(jiān)理協(xié)會(huì)網(wǎng)站企業(yè)網(wǎng)絡(luò)的組網(wǎng)方案