2019,4月27尚學堂部分筆記

今天學了常用類

比如包裝類,他就是把八大基礎類型封裝到一個類中,并且提供方法和屬性,這樣會更方便快捷來操作基本數(shù)據(jù)類型,不過包裝類的出現(xiàn)并不是取代基本數(shù)據(jù)類型,也沒有那個能力。

Object是老大

Boolean和Number和Character是老二

而Number又分別有(Byte)(short)(integer)(long)(float)(double)

Number是他們的父類,提供把包裝類轉化成基本數(shù)據(jù)類型的方法,比如(xxxxValue)

2.int和Integer和String之間可以相互轉換

3.Comparable是一個接口,他的作用是比較大小并且強行對每個類的對象進行自然排序

例子:Comparable 定義了a.compareTo(b),返回值表示

a.compareTo(b) 返回值? 排序

? a < b ? ? ? ? 負整數(shù) ? ? ? ? 升序

? a = b? ? 0 ? ? ? ? 相等

? a > b ? ? ? ? 正整數(shù)? 降序

4.還學了自動裝箱和自動拆箱,有一點要注意,就是JDK1.5才出現(xiàn)的,并且不要頻繁使用自動拆裝箱

自動裝箱(auto-boxing)

把基本數(shù)據(jù)類型自動轉化成對象的包裝類的過程稱為自動裝箱

自動拆箱(auto-unboxing)

把包裝類自動轉化成對于的基本數(shù)據(jù)類型的過程稱為自動拆箱

5.String

String 類代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作為此類的對象。

字符串本質上是一個字符數(shù)組,它們的值在創(chuàng)建之后不能更改,所以字符串是常量;

并且因為String的對象是不可變的,所以可以共享

6.CharSequence 接口把字符串看出一個可讀序列,提供了charAt(index)獲取指定索引處的字符;

length() 字符數(shù)組或者字符串的長度。

7.格式化字符串(浮點的意思其實就是小數(shù)點)

注意:系統(tǒng)會默認的字符集是(GBK)

%d 格式化整形

%f 格式化浮點型

%.nf 格式化浮點型四舍五入保留n為小數(shù),

%c 格式化字符

%s 格式化字符串

8. Stringbuffer的意義

StringBuffer是字符的可變?nèi)萜鳌?梢栽诔绦蜻\行過程中向容器中添加、刪除、修改字符。

StringBuffer 本質上是一個字符數(shù)組的包裝類,并提供了很多方法向這個字符數(shù)組中添加、刪除、修改字符。

并且Stringbuffer是線程安全的

Stringbuffer的默認字符數(shù)組的長度是16,如果你要超過16,那也行,他會自動增加容量給你,可是他擴容的規(guī)則是:當前容量*2+2的,所以有時候可能會浪費很多空間,但是如果未來不再向這個數(shù)組中添加字符,那可以通過trimtosize來優(yōu)化他,比如給你的空間是34,你只用了17,他就會把多余的給清除,但是切記,是未來確定不再添加字符才進行的操作,不然到時候又要重新申請空間,久的空間又丟了

StringBuffer與StringBuilder區(qū)別(面試題經(jīng)常有)

StringBuffer 是線程安全的,執(zhí)行效率低,JDK1.0出現(xiàn)? (多線程)

StringBuiler 就是為了緩解執(zhí)行效率低而產(chǎn)生的,但線程不安全。JDK 1.5出現(xiàn) (單線程)

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容