String類是不可改變的斜脂,所以一旦創(chuàng)建了String對(duì)象锭弊,那么它的值就無(wú)法改變了玄组。如果需要對(duì)字符串做很多修改,應(yīng)該使用StringBuffer & StringBuilder.
- StringBuffer和StringBuilder類的對(duì)象可以被多次修改涡贱,并且不產(chǎn)生新的未使用對(duì)象。
- StringBuilder和StringBuffer之間最大的區(qū)別在于StringBuilder的方法不是線程安全的(不能同步訪問(wèn))惹想。
- StringBuilder速度更快,所以多數(shù)情況下建議使用StringBuilder督函。然而在應(yīng)用程序要求線程安全的情況下嘀粱,必須使用StringBuffer.
length()方法,length屬性辰狡,size()方法的區(qū)別:
- length()方法是針對(duì)字符串來(lái)說(shuō)的
- length屬性是針對(duì)java中的數(shù)組來(lái)說(shuō)的
- size()方法是針對(duì)泛型集合來(lái)說(shuō)的
對(duì)整數(shù)進(jìn)行格式化:%[index$][標(biāo)識(shí)][最小寬度][轉(zhuǎn)換方式]
特殊的格式常以%index$開頭锋叨,index從1開始取值,表示將第index個(gè)參數(shù)拿來(lái)進(jìn)行格式化宛篇。
標(biāo)識(shí):
- '-' 在最小寬度內(nèi)左對(duì)齊娃磺,不可以與用'0'填充同時(shí)使用
- '+' 結(jié)果總是包括一個(gè)符號(hào)
- '#' 只適用于8進(jìn)制和16進(jìn)制,8進(jìn)制在前面填0,16進(jìn)制填0x
- ' ' 正值前加空格叫倍,負(fù)值前加負(fù)號(hào)
- '0' 結(jié)果用0填充
- ',' 只適用于10進(jìn)制偷卧,每3位數(shù)字之間用','分隔
- '(' 若參數(shù)為負(fù)數(shù),則不添加負(fù)號(hào)而使用圓括號(hào)將數(shù)字括起來(lái)
轉(zhuǎn)換方式:
d - 十進(jìn)制吆倦; o - 八進(jìn)制听诸;x或X - 十六進(jìn)制
對(duì)浮點(diǎn)數(shù)進(jìn)行格式化:%[index$][標(biāo)識(shí)][最小寬度][.精度][轉(zhuǎn)換方式]
精度用來(lái)控制小數(shù)點(diǎn)后面的位數(shù)
轉(zhuǎn)換方式:
- 'e', 'E' -- 用計(jì)算機(jī)科學(xué)計(jì)數(shù)法表示的十進(jìn)制數(shù)
- 'f' -- 十進(jìn)制普通表示方式
- 'g', 'G' -- 根據(jù)情況,自動(dòng)選擇用普通方式還是科學(xué)計(jì)數(shù)方式
- 'a', 'A' -- 帶有效位數(shù)和指數(shù)的十六進(jìn)制浮點(diǎn)數(shù)