999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

圖示教學法在Java類型轉換中的應用

2007-12-31 00:00:00
考試周刊 2007年42期

摘 要:本文屬于教學教法的探討類文章,主要是借助圖示法來揭示Java類型轉換中的一些規律和方法。該方法清晰直觀的顯示了Java中類型轉中的不同情形。通過實踐,教學效果良好。

關鍵詞:圖示教學法 Java 類型轉換

圖示教學法是以圖形、圖象或表格為主要形式,揭示事物現象或本質特征,激發學生思維,使其更好地掌握有關知識,把握事物發展規律,加快教學進程的一種教學方法。這種教學法用形象化的圖形,圖象或表格的形式講授基本概念,揭示事物之間的邏輯聯系,其實質是使知識形象化,抽象理論具體化,零碎知識系列化。

Java類型轉換涉及的類型較多,轉換方法靈活多變。一般的講解授課,學生總是感覺東西多而且亂。而圖示教學法直觀明了,便于學生理解和掌握知識。

我們知道:Java的數據類型分為三大類,即布爾型、字符型和數值型,而其中數值型又分為整型和浮點型;相對于數據類型,Java的變量類型為布爾型boolean;字符型char;整型byte、short、int、long;浮點型float、double。其中四種整型變量和兩種浮點型變量分別對應于不同的精度和范圍。此外,我們還經常用到兩類變量,即String和StringBuffer。對于這些變量類型之間的相互轉換在我們編程中經常要用到。本文將通過圖示法對Java類型的轉換中做了一些總結和探討。

下面圖1、圖2和圖3是轉換圖,我們分別稱之為“三角轉換圖”、“星形轉換圖”和“矩形轉換圖”?!叭寝D換圖”主要顯示了StringBuffer、String、Integer和int之間的類似三角形的轉換關系?!靶切无D換圖”顯示了日期Date類型和String類型、int類型和long類型之間的轉換關系。而“矩形轉換圖”則顯示了byte、short、char、int、long、float、double之間的轉換關系。

在圖1中,總共涉及到8種轉換,每種轉換分別舉例介紹如下:

(1)由Integer類型轉換到int類型,可以使用Integer類型的方法intValue()。假設x是Integer類型的變量,則x.intValue()轉換為int型。

(2)由int轉換為Integer型,直接利用Integer的構造函數,new Integer(x),這里假設x為整型變量。如Integer i=new Integer(3)。

(3)由int型轉為String,只需要int與空串相加,如String a=“”+9;或者通過String類的方法valueOf(),比如String.valueOf(12.345),將放回字符串“12.345”。

(4)數字字符串轉換為int型,只需要調用Integer類的parseInt()方法。如int i=Integer.parseInt(“123”)。

(5)Integer轉換為String,直接利用其toString()方法。

(6)String轉換為Integer類,需要調用Integer類的valueOf()方法。如Integer x=Integer.valueOf(“123”)。

(7)直接調用StringBuffer類的構造函數直接可以將String變為StringBuffer類,如StringBuffer sb=new StringBuffer(“123”)。

(8)將StringBuffer類變為String類,需要調用StringBuffer類的toString()方法,如str是StringBuffer類型的變量,str.toString()將把str轉換為String類型;也可以利用類StringBuffer的substring方法,該方法是提取字串的函數,當然也可以拿來生成StringBuffer類型變量對應的String變量。如將StringBuffer類型的變量sb轉換為對應的String類型數據,可以這樣轉換:String s=StringBuffer.subString(0,sb.length())。

這里有幾點要注意:

1. 上面設計到的String必須是數字組成的字符串,否則會發生數據轉換異常。

2. 除了上面介紹的基本的轉換方法之外,還可以在此基礎上變化出多種轉換。比如把String轉換成Integer類型,可以直接按照(6)的方法來轉換,也可以經由int類型為中間橋梁做轉換,通過(4)、(2)來達到轉換的目的。Integer x=new Integer(Integer.parseInt(“123”))。再比如從int轉換為String類型,除了上面直接的轉換方法之外,還可以先把int轉為Integer,然后調用Integer類的toString()方法。如String a=new Integer(8).toString()。

3. 通過前面“三角形轉換”的介紹,我們再進一步討論下包裝類和對應的簡單類型之間的轉換:在討論之前,簡單了解一下Java的包裝類。所謂包裝類,就是可以直接將簡單類型的變量表示為一個類,在執行變量類型的相互轉換時,我們會大量使用這些包裝類。Java共有六個包裝類,分別是Boolean、Character、Integer、Long、Float和Double,從字面上我們就可以看出它們分別對應于boolean、char、int、long、float和double在進行簡單數據類型之間的轉換(自動轉換或強制轉換)時,總是可以利用包裝類進行中間過渡。一般情況下,首先聲明一個變量,然后生成一個對應的包裝類,就可以利用包裝類的各種方法進行類型轉換了。例如:例1,當希望把float型轉換為double型時:float f1=100.00f;Float F1=new float(f1);Double d1=F1.doubleValue();//F1.doubleValue()為Float類的返回double值型的方法。

當希望把double型轉換為int型時:double d1=100.00;Double D1=new Double(d1);int i1=D1.intValue();

當希望把int型轉換為double型時,自動轉換:int i1=200;double d1=i1;

簡單類型的變量轉換為相應的包裝類,可以利用包裝類的構造函數。即:Boolean(boolean value)、Character(char value)、Integer(int value)、Long(long value)、Float(float value)、Double(double value) 。

而在各個包裝類中,總有形為××Value()的方法,來得到其對應的簡單類型數據。利用這種方法,也可以實現不同數值型變量間的轉換,例如,對于一個雙精度實型類,intValue()可以得到其對應的整型變量,而doubleValue()可以得到其對應的雙精度實型變量。

4. StringBuffer、String和char也可以構成另外一個三角形轉換。char類型經過String.valueOf(char c)方法可以轉換為String類型,而通過String類型中的charArray()方法可以將字符串轉換為字符數組。我們還可以通過StringBuffer的charAt方法,獲取StringBuffer某個字符,或者通過StringBuffer的append(char ch)方法使char類型轉換為StringBuffer類型。

Date類與其它數據類型的相互轉換,見圖2。

整型和Date類之間并不存在直接的對應關系,只是你可以使用int型為分別表示年、月、日、時、分、秒,這樣就在兩者之間建立了一個對應關系,在作這種轉換時,你可以使用Date類構造函數的三種形式:Date(int year,int month,int date):以int型表示年、月、日;Date(int year,int month,int date,int hrs,int min):以int型表示年、月、日、時、分;Date(int year,int month,int date,int hrs,int min,int sec):以int型表示年、月、日、時、分、秒。在長整型和Date類之間有一個很有趣的對應關系,就是將一個時間表示為距離格林尼治標準時間1970年1月1日0時0分0秒的毫秒數。對于這種對應關系,Date類也有其相應的構造函數:Date(long date)

獲取Date類中的年、月、日、時、分、秒以及星期你可以使用Date類的getYear()、getMonth()、getDate()、getHours()、getMinutes()、getSeconds()、getDay()方法,你也可以將其理解為將Date類轉換成int。而Date類的getTime()方法可以得到我們前面所說的一個時間對應的長整型數,與包裝類一樣,Date類也有一個toString()方法可以將其轉換為String類。

在圖2中,主要涉及強制類型轉換之間的情況,共7種數據類型之間的轉換。每種類型下面的數字,表示該類型占用的字節數。比如float類型下面有個數字4,表示float占用4個字節。那么,類型按照實體箭頭所示的方向,是由低級數據類型往高級數據類型作轉換,或者絕大部分是由占用字節位數少的數據類型向占用位數多的類型轉換,這種類型轉換稱為自動類型轉換。而虛線箭頭表示的是由占用字節位數較高的類型向占用字節位數較少的類型轉換,這時進行的是強制類型轉換。

經過教學實踐,我們發現教學效果良好,學生們可以很清晰地看到其中內在的聯系,而且有助于學生的理解和記憶。

參考文獻:

[1]JDK在線幫助文檔.http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/index.html.

[2]Bruce Eckel著.侯捷譯.Java編程思想(第二版).機械工業出版社,2002.9.

主站蜘蛛池模板: 亚洲色图欧美| 久久亚洲黄色视频| 久久黄色影院| 四虎成人在线视频| 中文字幕乱码二三区免费| 都市激情亚洲综合久久| 久操线在视频在线观看| 国产精品va免费视频| av大片在线无码免费| 国产真实自在自线免费精品| 在线看国产精品| 99国产精品免费观看视频| 国产在线第二页| 日韩A级毛片一区二区三区| 国产正在播放| 日韩高清中文字幕| 日本精品视频一区二区| 99久久国产综合精品女同 | 全部免费特黄特色大片视频| 国产玖玖玖精品视频| 国内精品视频区在线2021| 亚洲三级电影在线播放 | 美女潮喷出白浆在线观看视频| 日韩欧美中文字幕在线精品| 国产人成网线在线播放va| 亚洲精品不卡午夜精品| 狠狠色狠狠综合久久| 欧美日韩资源| 国产无码精品在线播放| 尤物国产在线| 台湾AV国片精品女同性| av一区二区人妻无码| 在线观看精品国产入口| 欧美亚洲国产日韩电影在线| 国产精品亚洲片在线va| 丰满人妻久久中文字幕| 98超碰在线观看| 好吊日免费视频| 亚洲AV无码一区二区三区牲色| 日本亚洲成高清一区二区三区| 国产aⅴ无码专区亚洲av综合网 | 欧美成人h精品网站| 免费中文字幕一级毛片| 久996视频精品免费观看| 亚洲欧美日韩成人在线| 3p叠罗汉国产精品久久| 四虎国产成人免费观看| 国产精品美人久久久久久AV| 国产成人精品一区二区三区| 最新精品久久精品| 日本人妻丰满熟妇区| 日韩黄色大片免费看| 夜夜高潮夜夜爽国产伦精品| 亚洲精品无码专区在线观看| 亚洲永久免费网站| 国产不卡一级毛片视频| 91色综合综合热五月激情| 欧美自慰一级看片免费| 久久成人18免费| 久久永久免费人妻精品| 久久精品亚洲中文字幕乱码| 九色在线视频导航91| 青青草一区二区免费精品| 人禽伦免费交视频网页播放| 亚洲中文制服丝袜欧美精品| 狠狠色丁香婷婷综合| 精品久久人人爽人人玩人人妻| 国产在线拍偷自揄拍精品| 一本久道久久综合多人| 国产午夜无码专区喷水| 性色在线视频精品| 久久精品中文字幕免费| 欧美在线伊人| 日韩午夜片| 手机在线免费不卡一区二| 五月婷婷亚洲综合| 小说区 亚洲 自拍 另类| 午夜一区二区三区| 97青草最新免费精品视频| 72种姿势欧美久久久大黄蕉| 欧美日韩中文国产va另类| 国产一区二区色淫影院|