樂(lè)編科技--java基礎(chǔ)day22

一挚躯、常用的API

1.object類

java.lang.Object 類是Java語(yǔ)言中的根類,即所有類的父類擦秽。它中描述的所有方法子類都可以使用码荔。在對(duì)象實(shí)例 化的時(shí)候,最終找的父類就是Object感挥。 如果一個(gè)類沒有特別指定父類缩搅, 那么默認(rèn)則繼承自O(shè)bject類。例如:

public class MyClass /*extends Object*/ {
 // ... 
}
  • public String toString() :返回該對(duì)象的字符串表示触幼。
    toString方法返回該對(duì)象的字符串表示硼瓣,其實(shí)該字符串內(nèi)容就是對(duì)象的類型+@+內(nèi)存地址值。 由于toString方法返回的結(jié)果是內(nèi)存地址置谦,而在開發(fā)中堂鲤,經(jīng)常需要按照對(duì)象的屬性得到相應(yīng)的字符串表現(xiàn)形式,因此也需要重寫它霉祸。
    覆蓋重寫:
    如果不希望使用toString方法的默認(rèn)行為筑累,則可以對(duì)它進(jìn)行覆蓋重寫。例如:
@Override
 public String toString() {
 return "Person{" + "name='" + name + '\'' + ", age=" + age + '}'; 
}

小提示:
在我們直接使用輸出語(yǔ)句輸出對(duì)象名的時(shí)候,其實(shí)通過(guò)該對(duì)象調(diào)用了其toString()方法丝蹭。

  • public boolean equals(Object obj) :指示其他某個(gè)對(duì)象是否與此對(duì)象“相等”慢宗。
    調(diào)用成員方法equals并指定參數(shù)為另一個(gè)對(duì)象,則可以判斷這兩個(gè)對(duì)象是否是相同的奔穿。這里的“相同”有默認(rèn)和自定 義兩種方式镜沽。
    1.默認(rèn)地址比較
    如果沒有覆蓋重寫equals方法,那么Object類中默認(rèn)進(jìn)行 == 運(yùn)算符的對(duì)象地址比較贱田,只要不是同一個(gè)對(duì)象缅茉,結(jié)果必然為false。
    2.對(duì)象內(nèi)容比較
    如果希望進(jìn)行對(duì)象的內(nèi)容比較男摧,即所有或指定的部分成員變量相同就判定兩個(gè)對(duì)象相同蔬墩,則可以覆蓋重寫equals方 法。例如:
public class Person {
    private String name;
    private int age;

    public Person() {
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Person)) return false;
        Person person = (Person) o;
        return getAge() == person.getAge() &&
                Objects.equals(getName(), person.getName());
    }

    @Override
    public int hashCode() {
        return Objects.hash(getName(), getAge());
    }

測(cè)試:

   Person person1 = new Person();
        person1.setName("1111");
        Person person2 = new Person();
        person2.setName("1111");
        System.out.println("person1的地址值為:"+person1);
        System.out.println("person2的地址值為:"+person2);
        boolean equals = person1.equals(person2);
        System.out.println(equals);
結(jié)果:
當(dāng)重寫了equals方法以后,輸出結(jié)果為ture,
沒有重寫equals時(shí),輸出結(jié)果為false

結(jié)論:
== 比較的是變量(棧)內(nèi)存中存放的對(duì)象的(堆)內(nèi)存地址耗拓,用來(lái)判斷兩個(gè)對(duì)象的地址是否相同拇颅,即是否是指相同一個(gè)對(duì)象。比較的是真正意義上的指針操作乔询。equals用來(lái)比較的是兩個(gè)對(duì)象的內(nèi)容是否相等樟插,由于所有的類都是繼承自java.lang.Object類的,所以適用于所有對(duì)象,如果沒有對(duì)該方法進(jìn)行覆蓋的話黄锤,調(diào)用的仍然是Object類中的方法搪缨,而Object中的equals方法返回的卻是==的判斷,如果覆蓋以后那么比較的是內(nèi)容是否相等。

2.Date類

java.util.Date 類 表示特定的瞬間鸵熟,精確到毫秒副编。

  • public Date() :分配Date對(duì)象并初始化此對(duì)象,以表示分配它的時(shí)間(精確到毫秒)旅赢。
 System.out.println(new Date());
結(jié)果:
Fri Jul 03 05:01:41 CST 2020

提示:
在使用println方法時(shí)齿桃,會(huì)自動(dòng)調(diào)用Date類中的toString方法。Date類對(duì)Object類中的toString方法進(jìn)行 了覆蓋重寫煮盼,所以結(jié)果為指定格式的字符串。

DateFormat類

java.text.DateFormat 是日期/時(shí)間格式化子類的抽象類带污,我們通過(guò)這個(gè)類可以幫我們完成日期和文本之間的轉(zhuǎn) 換,也就是可以在Date對(duì)象與String對(duì)象之間進(jìn)行來(lái)回轉(zhuǎn)換僵控。

  • 格式化:按照指定的格式,從Date對(duì)象轉(zhuǎn)換為String對(duì)象鱼冀。
  • 解析:按照指定的格式报破,從String對(duì)象轉(zhuǎn)換為Date對(duì)象。
    構(gòu)造方法:
    由于DateFormat為抽象類千绪,不能直接使用充易,所以需要常用的子類 java.text.SimpleDateFormat 。這個(gè)類需要一個(gè) 模式(格式)來(lái)指定格式化或解析的標(biāo)準(zhǔn)荸型。構(gòu)造方法為:
  • public SimpleDateFormat(String pattern) :用給定的模式和默認(rèn)語(yǔ)言環(huán)境的日期格式符號(hào)構(gòu)造 SimpleDateFormat盹靴。
    參數(shù)pattern是一個(gè)字符串,代表日期時(shí)間的自定義格式瑞妇。


    日期.PNG

    創(chuàng)建SimpleDateFormat對(duì)象的代碼如:

 //多態(tài)
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String format = dateFormat.format(new Date());
        System.out.println(format);
結(jié)果:
2020-07-03 05:07:32
  • public String format(Date date) :將Date對(duì)象格式化為字符串稿静。 - public Date parse(String source) :將字符串解析為Date對(duì)象。
//1
 try {
            DateFormat df = new SimpleDateFormat("yyyy年MM月dd日");
            String str = "2020年7月3日";
            Date date = null;
            date = df.parse(str);
            System.out.println(date);
        } catch (ParseException e) {
            e.printStackTrace();
        }
結(jié)果:
Fri Jul 03 00:00:00 CST 2020
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末辕狰,一起剝皮案震驚了整個(gè)濱河市改备,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蔓倍,老刑警劉巖悬钳,帶你破解...
    沈念sama閱讀 217,185評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異偶翅,居然都是意外死亡默勾,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門倒堕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)灾测,“玉大人,你說(shuō)我怎么就攤上這事∠碧拢” “怎么了铭段?”我有些...
    開封第一講書人閱讀 163,524評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)秦爆。 經(jīng)常有香客問(wèn)我序愚,道長(zhǎng),這世上最難降的妖魔是什么等限? 我笑而不...
    開封第一講書人閱讀 58,339評(píng)論 1 293
  • 正文 為了忘掉前任爸吮,我火速辦了婚禮,結(jié)果婚禮上望门,老公的妹妹穿的比我還像新娘形娇。我一直安慰自己,他們只是感情好筹误,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評(píng)論 6 391
  • 文/花漫 我一把揭開白布桐早。 她就那樣靜靜地躺著,像睡著了一般厨剪。 火紅的嫁衣襯著肌膚如雪哄酝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評(píng)論 1 301
  • 那天祷膳,我揣著相機(jī)與錄音陶衅,去河邊找鬼。 笑死直晨,一個(gè)胖子當(dāng)著我的面吹牛搀军,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播抡秆,決...
    沈念sama閱讀 40,130評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼奕巍,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了儒士?” 一聲冷哼從身側(cè)響起的止,我...
    開封第一講書人閱讀 38,985評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎着撩,沒想到半個(gè)月后诅福,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡拖叙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評(píng)論 3 334
  • 正文 我和宋清朗相戀三年氓润,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片薯鳍。...
    茶點(diǎn)故事閱讀 39,779評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咖气,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情崩溪,我是刑警寧澤浅役,帶...
    沈念sama閱讀 35,477評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站伶唯,受9級(jí)特大地震影響觉既,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜乳幸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評(píng)論 3 328
  • 文/蒙蒙 一瞪讼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧粹断,春花似錦符欠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至悬赏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間娄徊,已是汗流浹背闽颇。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留寄锐,地道東北人兵多。 一個(gè)月前我還...
    沈念sama閱讀 47,876評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像橄仆,于是被迫代替她去往敵國(guó)和親剩膘。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評(píng)論 2 354