国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

J2SE(TM) 5.0 語言特性

2019-11-18 15:35:58
字體:
供稿:網(wǎng)友

  1. [C風(fēng)格格式化輸出]

    java總算也有類似C的PRintf()風(fēng)格的方法了,方法名同樣叫作printf(),這一特性依靠于前邊提到的可變長度參數(shù)。舉個(gè)例子來說,我們現(xiàn)在可以寫:

System.out.printf("%s has a value of %d.%n", someString, a);

    怎么樣,看上去還不錯(cuò)吧?需要注重的是Java為了支持多平臺,新增了%n標(biāo)示符,作為對/n的補(bǔ)充。有關(guān)Java格式化輸出的具體語法,請參考java.util.Formatter的API文檔。

  2.[增強(qiáng)的for循環(huán)]

    你是否已經(jīng)厭倦了每次寫for循環(huán)時(shí)都要寫上那些機(jī)械的代碼,尤其當(dāng)你需要遍歷數(shù)組或者Collection,如:(假設(shè)在Collection中儲存的對象是String類型的)

public void showAll (Collection c) {

for (Iterator iter = c.iterator(); iter.hasNext(); ) {

System.out.println((String) iter.next());

}

}

public void showAll (String[] sa) {

for (int i = 0; i < sa.length; i++) {

System.out.println(sa[i]);

}

}

    這樣的代碼不僅顯得臃腫,而且輕易出錯(cuò),我想我們大家在剛開始接觸編程時(shí),尤其是C/C++和Java,可能多少都犯過以下類似錯(cuò)誤的一種或幾種:把for語句的三個(gè)表達(dá)式順序弄錯(cuò);第二個(gè)表達(dá)式邏輯判定不正確(漏掉一些、多出一些、甚至死循環(huán));忘記移動游標(biāo);在循環(huán)體內(nèi)不小心改變了游標(biāo)的位置等等。為什么不能讓編譯器幫我們處理這些細(xì)節(jié)呢?在5.0中,我們可以這樣寫:

public void showAll (Collection c) {

for (Object obj : c) {

System.out.println((String) obj);

}

}

public void showAll (String[] sa) {

for (String str : sa) {

System.out.println(str);

}

}


    這樣的代碼顯得更加清楚和簡潔,不是嗎?具體的語法很簡單:使用":"分隔開,前面的部分寫明從數(shù)組或Collection中將要取出的類型,以及使用的臨時(shí)變量的名字,后面的部分寫上數(shù)組或者Collection的引用。加上泛型,我們甚至可以把第一個(gè)方法變得更加漂亮:

public void showAll (Collection<String> cs) {

for (String str : cs) {

System.out.println(str);

}

}

    有沒有發(fā)現(xiàn):當(dāng)你需要將Collection<String>替換成String[],你所需要做的僅僅是簡單的把參數(shù)類型"Collection<String>"替換成"String[]",反過來也是一樣,你不完全需要改其他的東西。這在J2SE(TM) 5.0之前是無法想象的。

    對于這個(gè)看上去相當(dāng)方便的新語言元素,當(dāng)你需要在循環(huán)體中訪問游標(biāo)的時(shí)候,會顯得很別扭:比方說,當(dāng)我們處理一個(gè)鏈表,需要更新其中某一個(gè)元素,或者刪除某個(gè)元素等等。這個(gè)時(shí)候,你無法在循環(huán)體內(nèi)獲得你需要的游標(biāo)信息,于是需要回退到原先的做法。不過,有了泛型和增強(qiáng)的for循環(huán),我們在大多數(shù)情況下已經(jīng)不用去操心那些煩人的for循環(huán)的表達(dá)式和嵌套了。究竟,我們大部分時(shí)間都不會需要去了解游標(biāo)的具體位置,我們只需要遍歷數(shù)組或Collection,對吧?

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 嘉禾县| 江源县| 昌黎县| 夹江县| 鹿邑县| 灯塔市| 鄂温| 黄大仙区| 吴堡县| 石狮市| 镇原县| 石景山区| 双城市| 桐柏县| 宜川县| 道真| 香港 | 库伦旗| 玛曲县| 淮阳县| 准格尔旗| 盐山县| 会泽县| 哈巴河县| 普宁市| 铁力市| 黑龙江省| 萨迦县| 新巴尔虎右旗| 蓬安县| 陇川县| 买车| 扬州市| 毕节市| 青河县| 达孜县| 托克托县| 重庆市| 绩溪县| 赫章县| 玛多县|