轉:JDK1.5新語法

herosoft發表於2010-03-05
1 - 泛性程式設計
ArrayList list = new ArrayList();
list.add(new String("Hello!"));
System.out.println(list.get(0));

2 - 自動裝箱/拆箱
ArrayList list = new ArrayList();
Integer number = new Integer(10); //先要把數字弄進包裝類
list.add(number);
[@more@]

//然後想要取出這個數字也極其麻煩,看看這個式子,暈啊!
int i = ((Integer)list.get(0)).intValue();

ArrayList list = new ArrayList();
list.add(10);
int i = list.get(0);

3 - 增強的迴圈結構

呵呵,這可是一個非常厲害的東東啊,不能小視。以前的for(;;)迴圈我想大家都很熟悉,我也不再舉例子了,我們們就看看現在這個新的迴圈吧:

int data[] = { 1, 2, 3, 4, 5 };
for(int j : data)
System.out.println(j);

4 - 列舉型別
這是一個C/C++程式設計師都比較熟悉的概念,但是以前Java裡面沒有,現在終於引入了,用法和C/C++中相似:
enum Color {
BLACK,
WHITE,
GREEN
};

Color c = Color.GREEN;

5 - 靜態import

double result = Math.sqrt(100);

那個前面的字首Math是不是有點不爽,要是和C語言裡面直接使用sqrt()就好了。OK,現在我們可以了--使用靜態import:

import static java.lang.Math.*;

double result = sqrt(100);


6 - 格式化輸出


System.out.printf("This is a test: %4.2f ", 123.123);

這就會列印出:This is a test: 123.12

7 - 從終端讀取資料

剛開始接觸Java的時候,我怎麼也不能用Java在終端像C一樣方便的讀取資料。要從終端讀取一個整數我以前是這麼弄的:

try {
BufferedReader reader = new BufferedReader(new
InputStreamReader(System.in));
int i = Integer.parseInt(reader.readLine());
} catch(IOException e) { }


現在好了,Java裡面引入了一個Scanner(),可以方便的從終端讀取資料:

Scanner read = new Scanner(System.in);
int i = read.nextInt();


8 - 不確定的引數個數

void argtest(
Object ... args) {
for(int i = 0; i < args.length; i++)
System.out.println(i);
}

然後我們可以這樣呼叫這個函式:
argtest(1);
argtest(1, 2, 4, 5, 6);

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/220284/viewspace-1031607/,如需轉載,請註明出處,否則將追究法律責任。

相關文章