亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

里程碑式的革新—全新J2SE 1.5新特性簡介

2019-11-18 11:56:02
字體:
來源:轉載
供稿:網友

  java2標準版(Java 2 Platform, Standard Edition, J2SE)1.5即將正式推出,這一次的版本更新不同于以往,它帶來了很多里程碑式的革新,SUN將其綽號取名為“虎”。這一次的變革將是Java誕生以來從未有過的,它給我們帶來了耳目一新的感覺。下面我們就來欣賞一下其中的部分典型變化:
  
  1.自動包裝和解包(Autoboxing and unboxing)
  代碼示例
  
  往一個ArrayList中加入一個整數,1.5版本以前的版本寫法是:
  
  List list = new ArrayList();
  
  list.add( new Integer( 10 ) );
  
  而在1.5版本中可以寫為:
  
  list.add( 10 );
  
  因為,在1.5版本中,對一個整數進行包裝,使之成為一個Integer對象(即包裝,boxing),然后加入到一個ArrayList中的做法被認為是沒有必要的,反之,解包(unboxing)的做法也是沒有必要的,這樣的代碼只是增加了程序的文本長度而已,所以1.5版本支持了自動包裝和解包操作,對于bool/Boolean,byte/Byte,double/Double,short/Short,int/Integer,long/Long,float/Float的相應包裝/解包操作都進行了支持,從而使代碼變得簡單。
  
  2.更優化的循環語句(The inhanced for loop)
  代碼示例
  
  一個典型的遍歷數組的循環語句,1.5版本以前的寫法是:
  
  for ( Iterator iterator = list.iterator(); iterator.hasNext(); )
  
  {
  
  Integer n = (Integer)iterator.next();
  
  ...
  
  }//for
  
  而在1.5版本中可以寫為:
  
  for ( Integer n : list )
  
  {
  
  ...
  
  }//for
  
  顯然1.5版本的寫法比以前是大大簡化了,但是在需要修改集合,比如刪除其中元素時不能采用這種寫法。之所以Java1.5版本沒有象C#那樣干脆定義一個foreach要害詞,主要是因為SUN認為增加一個專門的要害詞成本太高了(too costly)。但1.4版本中就曾經增加了assert要害詞,1.5版本中也新增加了enum要害詞,因此這一解釋恐怕并不那么令人信服。
  
  3.參數可變的方法和PRintf
  代碼示例
  
  當不能確定一個方法的入口參數的個數時,以往版本的Java中,通常的做法是將多個參數放在一個數組或者對象集合中作為參數來傳遞,1.5版本以前的寫法是:
  
  int sum(Integer[] numbers)
  
  {
  
  int nSum = 0;
  
  for(int i: numbers)
  
  nSum += i;
  
  return nSum;
  
  }
  
  ...
  
  //在別處調用該方法
  
  sum(new Integer[] {12,13,20});
  
  而在1.5版本中可以寫為:
  
  int sum(Integer... numbers)
  
  {
  
  int nSum = 0;
  
  for(int i: numbers)
  
  nSum += i;
  
  return nSum;
  
  }
  
  ...
  
  //在別處調用該方法
  
  sum(12,13,20);
  
  顯然,1.5版本的寫法更為簡易,也更為直觀,尤其是方法的調用語句,不僅簡化很多,而且更符合通常的思維方式,更易于理解。
  
  1.5版本自身就有一個應用該特征的典型例子,即C風格的格式化輸出方法——printf。
  
  代碼示例
  
  輸出一個加法算式,1.5版本以前的寫法是:
  
  int x = 5;
  
  int y = 7;
  
  int nSum = x + y;
  
  System.out.println(x + " + " + y + " = " + nSum);
  
  而在1.5版本中可以寫為:
  
  System.out.printf("%d + %d = %d/n", x, y, nSum);
  
  以上兩種寫法的輸出結構是一樣的,即“5 + 7 = 12”。
  
  這種改變不僅僅是形式上的,printf還可以提供更為靈活、強大的輸出功能,比如限定按照兩位整數的形式輸出,可以寫為“System.out.printf("%02d + %02d = %02d/n", x, y, nSum);”,輸出結果將是“05 + 07 = 12”。
  
  4.枚舉
  代碼示例
  
  構建一個表示色彩的枚舉,并賦值,在1.5版本中可以寫為:
  
  public enum MyColor{ Red, Yellow, Blue }
  
  MyColor color = MyColor.Red;
  
  for ( MyColor mycolor : MyColor.values() )
  
  System.out.println( mycolor );
  
  以往的Java版本中沒有enum要害詞,1.5版本中終于加入了進來,這確實是一個令人興奮的改進。此外,enum還提供了一個名為values()的靜態方法,用以返回枚舉的所有值的集合。所以,以上程序的輸出結果是把“Red”、“Yellow”、“Blue”分行輸出。
  
  而enum提供的靜態方法valueOf()則將以字符串的形式返回某一個具體枚舉元素的值,比如“MyColor.valueOf(“Red”)”會返回“Color.Red”。靜態方法name()則返回某一個具體枚舉元素的名字,比如“MyColor.Red.name()”會返回“Red”。類似的方法還有不少。此外,enum自身還可以有構造方法。
  
  5.靜態引用
  代碼示例
  
  當我們要獲取一個隨即數時,1.5版本以前的寫法是:
  
  import java.lang.Math; //程序開頭處
  
  ...
  
  double x = Math.random();
  
  而在1.5版本中可以寫為:
  
  import static java.lang.Math.random; //程序開頭處
  
  …
  
  double x = random();
  
  靜態引用使我們可以象調用本地方法一樣調用一個引入的方法,當我們需要引入同一個類的多個方法時,只需寫為“import static java.lang.Math.*”即可。這樣的引用方式對于枚舉也同樣有效。
  
  6.總結
  以上對J2SE1.5的部分新特征做了一些簡單的介紹。總而言之,1.5版本的Java確實給我們帶來了很多令人激動的變革,如同以上介紹的那樣,很多功能以前的版本也能實現,但是不能實現得這樣簡單、漂亮。相信這次變革會給Java帶來更多的追隨者。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美成人一区二区三区电影| 欧美亚州一区二区三区| 精品久久久久久中文字幕大豆网| 在线一区二区日韩| 91午夜理伦私人影院| 精品久久久久久国产| 91在线观看免费网站| 国产视频久久久| 日韩精品极品在线观看播放免费视频| 国产精品极品美女在线观看免费| 国产精品视频精品视频| 精品国产精品自拍| 国产精品一区二区久久精品| 欧美与黑人午夜性猛交久久久| 91精品视频播放| 亚洲欧美日韩国产成人| 91po在线观看91精品国产性色| 高清欧美电影在线| 少妇高潮久久久久久潘金莲| 亚洲精品之草原avav久久| 亚洲欧美色婷婷| 国产97色在线| 精品国偷自产在线视频| 欧美黑人巨大精品一区二区| 日韩精品久久久久久久玫瑰园| 欧美成人性生活| 中文字幕亚洲情99在线| 国产在线播放不卡| 久久久综合av| 日韩欧美在线字幕| 国产亚洲视频在线观看| 国产精品免费一区| 国内免费久久久久久久久久久| 欧美在线激情网| 国产一区二区三区精品久久久| 日韩av在线网页| 欧美激情一区二区三区成人| 日韩不卡中文字幕| 精品激情国产视频| 欧美猛交ⅹxxx乱大交视频| 国产精品香蕉av| 成人免费看片视频| www.99久久热国产日韩欧美.com| 最近更新的2019中文字幕| 国产国产精品人在线视| 国产精品入口日韩视频大尺度| 亚洲乱码国产乱码精品精天堂| 欧美多人爱爱视频网站| 欧美有码在线观看| 久久97精品久久久久久久不卡| 国产欧美亚洲精品| 精品亚洲夜色av98在线观看| 亚洲精品资源在线| 日韩精品www| 中文字幕亚洲二区| 日本不卡高字幕在线2019| 欧美在线观看视频| 成人乱人伦精品视频在线观看| 综合激情国产一区| 久久大大胆人体| 中文字幕亚洲欧美日韩高清| 久久99精品久久久久久噜噜| 欧美最猛黑人xxxx黑人猛叫黄| 日韩欧美在线网址| 日韩在线视频一区| 亚洲人成网在线播放| 91精品一区二区| 久久久久国产视频| 亚洲深夜福利视频| 91高潮在线观看| 不卡在线观看电视剧完整版| 亚州av一区二区| 丝袜情趣国产精品| 欧美精品在线观看| 久久综合久久八八| 国产精品高清免费在线观看| 国产日产亚洲精品| 亚洲国模精品一区| 欧美成人精品在线| 精品av在线播放| 亚洲黄在线观看| 亚洲一区亚洲二区| 国产在线精品一区免费香蕉| 97久久精品人搡人人玩| 久久99视频精品| 九九热这里只有在线精品视| 欧美日韩裸体免费视频| 亚洲一区二区在线播放| 日韩专区中文字幕| 欧美亚洲在线播放| 亚洲色图国产精品| 成人黄色在线免费| 狠狠综合久久av一区二区小说| 国产一区二区三区视频免费| 日韩第一页在线| 欧美巨猛xxxx猛交黑人97人| 免费99精品国产自在在线| 国产精品福利无圣光在线一区| 久久精品国产成人精品| 亚洲一区二区三区在线视频| 欧美性猛交xxxx乱大交蜜桃| 亚洲自拍高清视频网站| 一区二区三区四区在线观看视频| 国产精品日韩在线| 美女av一区二区| 亚洲一区二区久久久久久| 亚洲精品中文字幕女同| 欧美视频在线免费| 97在线免费观看视频| 日韩欧美精品在线观看| 成人久久精品视频| 视频在线观看一区二区| 亚洲a∨日韩av高清在线观看| 欧美激情xxxx性bbbb| 中文字幕在线视频日韩| 亚洲精品国产电影| 一区二区三区视频免费在线观看| 久久69精品久久久久久国产越南| 国产日韩欧美日韩大片| 亚洲国产日韩欧美在线动漫| 高清日韩电视剧大全免费播放在线观看| 久久精品视频中文字幕| 91精品国产色综合久久不卡98| 亚洲日本欧美中文幕| 亚洲成人三级在线| 亚洲欧洲国产伦综合| 综合久久五月天| 亚洲黄色在线看| 久久精品久久精品亚洲人| 日韩成人在线观看| 欧美中文在线观看| 国产视频自拍一区| 国产性色av一区二区| 色中色综合影院手机版在线观看| 国产精品欧美一区二区| 国产欧美日韩视频| 18一19gay欧美视频网站| 国产精品久久久久久久久久久不卡| 欧美性猛交xxxx偷拍洗澡| 日韩中文字幕网站| 欧美激情影音先锋| 日韩av在线一区二区| 久久精品成人欧美大片| 国产视频久久久久| 成人精品久久久| 色婷婷久久一区二区| 精品免费在线视频| 中文字幕日韩在线播放| 热re99久久精品国产66热| 日韩欧美亚洲国产一区| 国产精品久久国产精品99gif| 久久久久久国产精品| 日韩av免费网站| 亚洲精品综合精品自拍| 亚洲最大福利视频网| 国产成人精彩在线视频九色| 日韩中文在线视频| 成人免费福利视频| 欧美大片免费观看在线观看网站推荐| 成人性教育视频在线观看| 亚洲网站在线观看| 亚洲天堂男人天堂| 福利视频第一区| 亚洲一区二区三区sesese|