Object类和常用API
目錄
一、Object類
二、時間日期類
1.Date類
2.DateFormat類
3.Calendar類
三、System類
1.兩個常用的靜態(tài)方法
四、StringBuilder類
1.String在拼接字符串時的性能問題
2.StringBuilder的介紹
3.構(gòu)造方法和常用方法
五、包裝類
1.八種基本數(shù)據(jù)類型對應(yīng)的包裝類
2.自動拆箱和自動裝箱
3.解析字符串
4.基本類型轉(zhuǎn)換為字符串
一、Object類
1.特點(diǎn):所有類的根類,所有類都會直接或者間接的繼承Object類。
2.toString方法:返回該對象的字符串表示。
默認(rèn)的字符串表示格式:包名.類名@地址值
注意:打印對象時,實際上JVM先調(diào)用對象的ToString獲取到返回值,再打印。
3.equals方法:
public boolean equals(Object obj)
判斷其他某個對象是否與此對象“相等"
a.默認(rèn)的equals方法,比較是兩個對象的地址值
b.我們在發(fā)開中, 一般會重寫equals方法,比較兩個對象的內(nèi)容是否相同
4.Objects類
Objects類是一個工具類( 不是根類!!!)
判斷兩個字符是否內(nèi)容相等
字符串1.equals(字符串2);//可能會出現(xiàn)空指針
Objects.equals(字符串1,字符串2);//空指針容忍的
代碼練習(xí)
public class ToStringTest{static int i = 1;public static void main(String args[]){System.out.println("love " + new ToStringTest());//love javaToStringTest a = new ToStringTest();a.i++;System.out.println("me " + a.i);//me 2}public String toString(){System.out.print("I ");//Ireturn "java ";} }運(yùn)行結(jié)果:I love java ???me 2
原因:當(dāng)執(zhí)行代碼的時候,首先加載靜態(tài)變量,然后執(zhí)行main方法,由于main方法內(nèi)部第一行代碼為輸出語句,里面new了此類對象,當(dāng)執(zhí)行此行代碼時會先創(chuàng)建了本類的對象,由于此類重寫了toString方法,會先執(zhí)行toString方法的打印輸出,然后返回“java ”,再執(zhí)行main方法第一行打印輸出。在Java中“System.out.println(類對象名);”實際輸出的是該對象的toString()方法返回的字符串,即括號中的內(nèi)容等價于類對象名.toString(),toString方法的好處是在碰到println方法的時候會被自動調(diào)用,不用顯示的寫出來。
二、時間日期類
1.Date類
構(gòu)造:
public Date();//當(dāng)前系統(tǒng)時間
Public Date(long time);//?//代表距離標(biāo)準(zhǔn)時間 time毫秒后的時間點(diǎn)
成員方法:
public long getTime();//獲取當(dāng)前Date對象 距離標(biāo)準(zhǔn)時間的毫秒值
2.DateFormat類
構(gòu)造:
public SimpleDateFormat(String pattern);//以指定的模式,創(chuàng)建一個日期格式化對象
成員方法:
public String format(Date date);//把Date對象 格式化成 符合模式的字符串
public Date parse(String time);//把符合格式的字符串 解析回 Date對象
Eg:SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd HH-mm-ss”);
3.Calendar類
獲取方式:
通過Calendar的一個靜態(tài)方法直接獲取子類對象
public static Calendar getInstance()
常用方法:
public int get(int filed);//根據(jù)成員變量的編號,獲取該成員變量的值
public void set(int field,int value);//修改指定編號的成員變量的值
public void add(int field,int amount);//增加指定編號的成員變量的值
三、System類
1.兩個常用的靜態(tài)方法
public static long currentTimeMillis():獲取當(dāng)前時間距離標(biāo)準(zhǔn)時間的毫秒值
//和 new Date().getTime()是一樣的效果
public static void arraycopy(源數(shù)組,起始索引,目標(biāo)數(shù)組,起始索引,元素個數(shù))
四、StringBuilder類
1.String在拼接字符串時的性能問題
String是不可變的,每次拼接時都會創(chuàng)建新的String對象,導(dǎo)致性能極低
2.StringBuilder的介紹
StringBuilder是可變的字符串,每次拼接字符串時,直接在原有字符串后面繼續(xù)追加
當(dāng)StringBuilder底層字符數(shù)組不夠用,會自動擴(kuò)容
3.構(gòu)造方法和常用方法
構(gòu)造:
public StringBuilder();//空的StringBuilder對象
public StringBuilder(String str);//有參的StringBuilder對象
成員方法:
public StringBuilder append(任意類型);拼接字符串,
返回StringBuilder本身對象,支持鏈?zhǔn)骄幊?/p>
public String toString();//返回StringBuilder的內(nèi)容,以String類型返回的
在開發(fā)中,如果是拼接字符串,使用StringBuilder
拼接完畢之后,先轉(zhuǎn)成String,再打印
五、包裝類
1.八種基本數(shù)據(jù)類型對應(yīng)的包裝類
byte Byte
short Short
char Character
int Integer
long Long
float Float
double Double
boolean Boolean
2.自動拆箱和自動裝箱
3.解析字符串
Integer.parseInt("100");
Double.parseDouble("3.14");
Boolean.parseBoolean("false");
4.基本類型轉(zhuǎn)換為字符串
最簡單:
10+"";
StringBuilder:
new StrngBuilder().append(10).toString();//得到結(jié)果 "10"
通過String的靜態(tài)方法
String.valueOf(10);// 返回一個 String對象
二
總結(jié)
以上是生活随笔為你收集整理的Object类和常用API的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java使用集合模拟斗地主洗牌发牌案例
- 下一篇: Collection、泛型