JavaSE 5.0的一些新特性
1. 對(duì)于增強(qiáng)的for語(yǔ)句的支持
支持類似foreach的語(yǔ)法
2.對(duì)泛型的支持
ArrayList<Type> arrayList = new ArrayList<Type>();
原來(lái)arrayList.get(i)的前面要加(Type)arryList.get(i)進(jìn)行類型轉(zhuǎn)換,現(xiàn)在可以直接寫(xiě)arrayList.get(i)了。
具體泛型怎么用,還用繼續(xù)研究。呵呵。
3.自動(dòng)打包
原來(lái)要寫(xiě)
int n = 5;
Integer wrapper = new Integer(n);
先可以寫(xiě)
int n = 5;
Integer wrapper = n;
當(dāng)然也可以寫(xiě)
Integer wrapper = ***;
n = wrapper
5. 覆蓋方法時(shí)候可以改變返回類型
6. 靜態(tài)導(dǎo)入
import一個(gè)有靜態(tài)方法的類,如java.lang.Math;
里面一個(gè)靜態(tài)變量PI,一個(gè)靜態(tài)方法sqrt();
原來(lái)使用要Math.sqrt(Math.PI);
現(xiàn)在可以直接寫(xiě)sqrt(PI);
導(dǎo)入方法,如要導(dǎo)入Math.sqrt,使用
import static java.lang.Math.*;
另外一個(gè)例子
import static java.lang.System.out;
太方便了,太方便了...
7. 輸入控制臺(tái)
這個(gè)更方便
實(shí)現(xiàn)了類似c中sanf和c++中cin的功能。
在java.lang.Scanner類,可以實(shí)現(xiàn)從控制臺(tái)直接讀取數(shù)據(jù)。如:
8.格式化輸出
類似printf中的輸出格式控制printf("%-5.3f", x);
可以使用
System.out.printlf("%8.2f", x);
9.關(guān)于界面編寫(xiě)的,不懂
10. Unicode編碼
支持Unicode4.0,有“增補(bǔ)”字符,都采用兩個(gè)連續(xù)的char編碼,對(duì)中文支持好。
11. 構(gòu)建字符串的新方法StringBuilder
StringBuilder s = new StringBuilder();
比StringBuffer靈活,但是不適線程安全的。所以,都線程時(shí)要注意。
參考資料: Core Java 2, Volume 1 seventh Edition 中文版 附錄B
支持類似foreach的語(yǔ)法
/**
@version 1.20 2004-02-28
@author Cay Horstmann
*/
public class Welcome
{
public static void main(String[] args)
{
String[] greeting = new String[3];
greeting[0] = "Welcome to Core Java";
greeting[1] = "by Cay Horstmann";
greeting[2] = "and Gary Cornell";
for (String g : greeting)
System.out.println(g);
}
}
@version 1.20 2004-02-28
@author Cay Horstmann
*/
public class Welcome
{
public static void main(String[] args)
{
String[] greeting = new String[3];
greeting[0] = "Welcome to Core Java";
greeting[1] = "by Cay Horstmann";
greeting[2] = "and Gary Cornell";
for (String g : greeting)
System.out.println(g);
}
}
2.對(duì)泛型的支持
ArrayList<Type> arrayList = new ArrayList<Type>();
原來(lái)arrayList.get(i)的前面要加(Type)arryList.get(i)進(jìn)行類型轉(zhuǎn)換,現(xiàn)在可以直接寫(xiě)arrayList.get(i)了。
具體泛型怎么用,還用繼續(xù)研究。呵呵。
3.自動(dòng)打包
原來(lái)要寫(xiě)
int n = 5;
Integer wrapper = new Integer(n);
先可以寫(xiě)
int n = 5;
Integer wrapper = n;
當(dāng)然也可以寫(xiě)
Integer wrapper = ***;
n = wrapper
5. 覆蓋方法時(shí)候可以改變返回類型
6. 靜態(tài)導(dǎo)入
import一個(gè)有靜態(tài)方法的類,如java.lang.Math;
里面一個(gè)靜態(tài)變量PI,一個(gè)靜態(tài)方法sqrt();
原來(lái)使用要Math.sqrt(Math.PI);
現(xiàn)在可以直接寫(xiě)sqrt(PI);
導(dǎo)入方法,如要導(dǎo)入Math.sqrt,使用
import static java.lang.Math.*;
另外一個(gè)例子
import static java.lang.System.out;
太方便了,太方便了...
7. 輸入控制臺(tái)
這個(gè)更方便
實(shí)現(xiàn)了類似c中sanf和c++中cin的功能。
在java.lang.Scanner類,可以實(shí)現(xiàn)從控制臺(tái)直接讀取數(shù)據(jù)。如:
import java.util.Scanner;
public class ConsoleInputTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
System.out.print("please input a integer:");
int n = in.nextInt();
System.out.print("please input a String:");
String str = in.next();
System.out.println("int: " + n);
System.out.println("String: " + str);
}
}
public class ConsoleInputTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
System.out.print("please input a integer:");
int n = in.nextInt();
System.out.print("please input a String:");
String str = in.next();
System.out.println("int: " + n);
System.out.println("String: " + str);
}
}
8.格式化輸出
類似printf中的輸出格式控制printf("%-5.3f", x);
可以使用
System.out.printlf("%8.2f", x);
9.關(guān)于界面編寫(xiě)的,不懂
10. Unicode編碼
支持Unicode4.0,有“增補(bǔ)”字符,都采用兩個(gè)連續(xù)的char編碼,對(duì)中文支持好。
11. 構(gòu)建字符串的新方法StringBuilder
StringBuilder s = new StringBuilder();
比StringBuffer靈活,但是不適線程安全的。所以,都線程時(shí)要注意。
參考資料: Core Java 2, Volume 1 seventh Edition 中文版 附錄B
posted on 2007-06-25 16:12 daning 閱讀(317) 評(píng)論(0) 編輯 收藏 所屬分類: java