版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
JSP程序設(shè)計教程第2章JSP開發(fā)基礎(chǔ)第
2
章JSP開發(fā)基礎(chǔ)2.1HTML語言基礎(chǔ)2.2JavaScript腳本語言2.3Java語言基礎(chǔ)√√√2.1HTML語言基礎(chǔ)什么是HTML?HTML是超文本標(biāo)記語言(HyperTextMarkupLanguage)的縮寫。HTML語言由一些標(biāo)記,字母和文字組成,用于編寫瀏覽器能識別的網(wǎng)頁文件
。2.1.1HTML文件的結(jié)構(gòu)
HTML文檔由<Html>標(biāo)記開頭,由</Html>標(biāo)記結(jié)尾。HTML文檔分為兩個部分:標(biāo)題部分和正文部分。<Html><Head><Title>標(biāo)題</Title>標(biāo)題部分</Head><Body>
正文部分</Body></Html>2.1.2頭元素<meta>標(biāo)簽(1)通常應(yīng)用于文件的開頭部分,即<head></head>之間(2)包括頁面的一些基本描述語句(3)有兩類<meta>標(biāo)簽,用不同的屬性劃分,name和http-equiv,都和屬性content一起使用頭元素(續(xù))name屬性,在頁面中加入描述信息(關(guān)鍵字、描述等)Keywords,設(shè)置關(guān)鍵字Description,網(wǎng)頁描述Robots,設(shè)置搜索采取何種行動:index檢索、noindex不檢索、follow順著該頁超鏈接搜索、nofollow禁止向下搜索、all所有、none所有都不Generator,說明編輯該頁面的工具軟件名Author,說明網(wǎng)頁的作者Copyright,說明版權(quán)信息頭元素(續(xù))http-equiv屬性,設(shè)置模擬的HTTP協(xié)議頭信息Content-Type,說明網(wǎng)頁的MIME類型和字符集編碼Refresh,自動刷新頁面的時間,單位秒,也可設(shè)置URL值,到時間跳轉(zhuǎn)到這個頁面上Expires,設(shè)定網(wǎng)頁到期時間,也就是緩存時間,一旦網(wǎng)頁過期,必須到服務(wù)器上重新調(diào)閱。Windows-Target,強(qiáng)制頁面在某個窗口顯示Pragma,禁止瀏覽器在本地計算機(jī)上緩存該頁面Enter,設(shè)置進(jìn)入頁面的特殊顯示效果Exit,設(shè)置離開頁面的特殊效果Meta用例指定被搜索引擎作為索引的關(guān)鍵詞<metaname=”keywords”content=”word1,word2,……”>設(shè)置文檔的語言字符集(Charsets)信息<metaHttp-equiv=”Content-Type”content=”text/html;charset=#”>#取值是:us-ascii,iso-8859-1,x-mac-roman,iso-8859-2,x-mac-ce,iso-2022-jp,x-sjjs,x-euc-jp,euc-kr,iso-2022-kr,gb2312,gb-2312-80,x-euc-tw,x-cns11643-1,x-cns11643-2,big5文檔更新:<metahttp-equiv=”refresh”content=”seconds;url=linkto”>頁面描述:<Metaname=”Description”content=”描述內(nèi)容”>頁面生成:<Metaname=”Generator”content=”MicrosoftFrontpage4.0”>控制頁面緩存:<metahttp-equiv=”expires”content=”Sun,31dec200000:00:00GMT”>示例:HEAD頭元素<HTML><HEAD> <METANAME="Description"CONTENT="ThePageOfHTML"> <METANAME="Keywords"CONTENT="Good,Better,Best"> <METAHTTP-EQUIV="Content-type"CONTENT="Text/html;charset=gb2312"> <METANAME="Author"CONTENT="ZhouRunFa"> <METAHTTP-EQUIV=“Refresh”CONTENT="5;URL="><TITLE>我的第一頁面</TITLE></HEAD><BODY>這里是內(nèi)容</BODY></HTML>META關(guān)鍵詞設(shè)置meta標(biāo)簽中最重要的就是:Keywords和description的設(shè)定。這兩個語句可以讓搜索引擎能準(zhǔn)確的發(fā)現(xiàn)你,吸引更多的人訪問你的站點!寫keywords的禁忌是:1.不要用常見詞匯。例如www,homepage,net,web等。2.不要用形容詞,副詞。例如最好的,最大的等。3.不要用籠統(tǒng)的詞匯,要盡量精確。例如不用“摩托羅拉手機(jī)”,改用“V998”等(補(bǔ)充)關(guān)于提高搜索點擊率
1.為了增加關(guān)鍵詞的密度,將關(guān)鍵字隱藏在頁面里(將文字顏色定義成與背景顏色一樣)。
2.在圖象的alt注釋語句中加入關(guān)鍵字。
如:<IMGSRC="xxx.gif"Alt="keywords">
3.利用HTML的注釋語句,在頁面代碼里加入大量關(guān)鍵字。
用法:<!這里插入關(guān)鍵字>2.1.3正文標(biāo)記<Body>
<Body>標(biāo)記用于標(biāo)記正文內(nèi)容。<Body>對標(biāo)記有多個屬性,用于定義頁面主體內(nèi)容的顯示效果。語法格式:<Body[Bgcolor=#|Text=#|Link=#|VLink=#|ALink=#|Background=圖形文件名]>2.1.4HTML常用排版標(biāo)記
1.標(biāo)題字體<H></H>語法格式:<HiColor=#|Align=#>標(biāo)題字體</Hi>(i=1,2,…6)2.字體標(biāo)記<Font></Font>一般用于定義文檔中要顯示文字的字體、大小和顏色。語法格式:<FontFace="字體名稱"|Size=#|Color=#>文字</Font>3.段落標(biāo)記<P>段落標(biāo)記<P>用于指出一個新段落的開始,其后面的內(nèi)容從新的一行開始,并與上段之間有一個空行。語法格式: <P>……</P>4.換行標(biāo)記<Br>換行標(biāo)記<Br>是單標(biāo)記,其作用相當(dāng)于“回車”鍵,<Br>后面的內(nèi)容將另起一行。語法格式:
<Br>…5.插入水平線標(biāo)記<Hr>標(biāo)記<Hr>用于產(chǎn)生一條水平線,以分隔文檔的不同部分。<Hr>是單標(biāo)記符。語法格式: <HrAlign=#|Size=#|Width=#|Noshade=#|Color=#>
6.塊級元素塊級元素包括<Div>和<Span>兩種標(biāo)記。<Div>用于文檔分節(jié),以便為文檔的不同部分應(yīng)用不同的段落格式。2.1.4HTML常用排版標(biāo)記2.1.5HTML文件的超鏈接標(biāo)記
超鏈接是互聯(lián)網(wǎng)最重要的功能,整個互聯(lián)網(wǎng)就是由相互鏈接的網(wǎng)頁組成的。2.1.5HTML文件的超鏈接標(biāo)記1.鏈接到本機(jī)的另一網(wǎng)頁語法格式:<AHref=“路徑\filename.html”>鏈接文字</A>
2.在同一網(wǎng)頁內(nèi)的自身鏈接語法格式:(1)定義錨標(biāo)記:<ANAME=“定義錨點的名字">顯示文字</A>(2)做對錨的鏈接:<AHref=“#已定義錨點的名字">鏈接顯示文字</A>2.1.5HTML文件的超鏈接標(biāo)記3.鏈接到另外一個網(wǎng)站上的Web頁語法格式:<Ahref=“URL”>這里是某地方</A>其中:URL:統(tǒng)一資源定位。
4.電子郵件鏈接電子郵件鏈接的作用是,當(dāng)單擊頁面上的鏈接時,自動打開默認(rèn)的郵件發(fā)送程序發(fā)郵件。語法格式:<AHref="mailto:Email地址">鏈接文字</A>2.1.5HTML文件的超鏈接標(biāo)記Target屬性的作用是將鏈接的文件在指定的窗口中打開,常用于框架結(jié)構(gòu)中。Target屬性的使用方式一般有以下三種:可用于A標(biāo)記、Base標(biāo)記、Form標(biāo)記<AHref="…"Target="Windows-Name"><BaseTarget="Windows-Name"><FormAction=“…”Target=“Windows-Name”>Windows-Name處可取值_blank在一個新的未命名的窗口載入文檔_self在相同的框架或窗口中載入目標(biāo)文檔_parent把文檔載入父窗口或包含了超鏈接引用的框架的框架集_top把文檔載入包含該超鏈接的窗口,取代任何當(dāng)前正在窗口中顯示的框架2.1.6圖像標(biāo)記<Img>
語法格式:<ImgSrc=?Width=?Height=?Alt=?Border=?Align=?>2.1.7表格標(biāo)記<table></table>1.定義表格標(biāo)題的標(biāo)記<caption>語法格式:<CaptionAlign=#>表格標(biāo)題</Caption>2.定義表格行的標(biāo)記<Tr>語法格式:<Tr>……</Tr>3.定義字段名的標(biāo)記<Th>語法格式:<Th>……</Th>4.定義數(shù)據(jù)的標(biāo)記<Td>語法格式:<Td>……</Td><tableAlign="center"border="1"><CaptionAlign="left">表格標(biāo)題</Caption><tr><th>NO.1</th><th>NO.2</th></tr><tr><td>11</td><td>22</td></tr></table>2.1.8表單標(biāo)記<form></form>
說明:
(1)<form>標(biāo)簽用于創(chuàng)建HTML表單。(2)表單能夠包含input元素,比如文本字段、復(fù)選框、單選框、提交按鈕、menus、textarea、fieldset和label元素等。2.1.8表單標(biāo)記<form></form><form>主要屬性說明:action:一個URL地址;指定form表單向何處發(fā)送數(shù)據(jù)。enctype:規(guī)定在發(fā)送表單數(shù)據(jù)之前,如何對表單數(shù)據(jù)進(jìn)行編碼。method:指定表單以何種方式發(fā)送到指定的頁面。指定的值有:
get:from表單里所填的值,附加在action指定的URL后面,做為URL鏈接而傳遞。
post:from表單里所填的值,附加在HTMLHeaders上。GET與POST的區(qū)別:①數(shù)據(jù)的查詢:get方式,能在URL中一目了然的看到所要查詢的信息(條件)。post因為隱藏掉了這些信息,不方便進(jìn)行檢驗查詢條件。②敏感數(shù)據(jù)的提交(安全性):get方式附加在URL上,會泄露掉敏感的消息。post方式,能隱藏掉敏感的信息。③大數(shù)據(jù)文本傳遞:get傳遞數(shù)據(jù)是通過將數(shù)據(jù)附加在URL上,各瀏覽器對URL也有個長度限制。IE:2048字符。Chrome大約是8182字符。post基本沒此限制。2.1.9表單中的控件<input>標(biāo)記根據(jù)不同的type屬性值,輸入字段擁有很多種形式,type的取值如下:text文本區(qū)域password密碼區(qū)域,輸入的文本以'*'展示radio單選框Checkbox復(fù)選框reset重置當(dāng)前<form>表單submit提交當(dāng)前<form>表單button常用于啟動JavaScript程序file文件選擇標(biāo)簽hidden隱藏區(qū)域image圖像形式的提交按鈕
2.1.9表單中的控件<select>標(biāo)記屬性介紹:
size:默認(rèn)展示的下拉列表尺寸。默認(rèn)的為combox樣式;大于1時,就是listbox樣式。
multiple:多項選擇,按住Ctrl+左鍵進(jìn)行多選。子項:
optgroup:選擇項的類別,不能被選中。
label屬性:類別展示的名稱
title屬性:鼠標(biāo)移到選擇項上去,要展示的信息
option:可選的項目
vlaue屬性:選擇項具體的名稱
title屬性:鼠標(biāo)移到選擇項上去,要展示的信息2.1.9表單中的控件<textarea>標(biāo)記多行文本區(qū)域?qū)傩裕?/p>
rows:表示顯示的行數(shù)
cols:表示顯示的列數(shù)
readonly:是否只讀2.1.9表單中的控件ul、ol、li列表標(biāo)記ul
:unorderedlist(無序列表)ol
:orderedlist
(有序列表))li
:listitem(列表項目),基于上面2個列表子項目。2.1.10框架結(jié)構(gòu)在HTML中,框架(Frame)亦稱為“幀”,使用框架可以獲得在同一個窗口中開辟幾個子窗口以便同時顯示幾個不同頁面的效果。
框架集標(biāo)記框架結(jié)構(gòu)的所有內(nèi)容都包含在對標(biāo)記<FrameSet>和</FrameSet>之間。2.1.11CSS編程技術(shù)CSS概述CSS中文譯為層疊樣式表單,是一種用來裝飾HTML的標(biāo)記的集合。HTML是一種標(biāo)記語言,而CSS是對這種標(biāo)記的一種重要擴(kuò)展,可以進(jìn)一步美化頁面,彌補(bǔ)HTML對網(wǎng)頁格式化功能的不足,比如段落間距、行距、字體大小、排版定位等。CSS樣式規(guī)則組成語法為: 選擇符{屬性:值}單一選擇符的復(fù)合樣式聲明應(yīng)該用分號隔開:選擇符{屬性1:值1;屬性2:值2}加載CSS樣式的三種方式
1.在<Head>中引用在<Head>標(biāo)記中加上<Style>標(biāo)記即可。2.在<Body>中引用在<Body>中實現(xiàn)主要是指在標(biāo)記中引用,只要將定義在<Style>標(biāo)記中的值拿到對應(yīng)的標(biāo)記中就可以。3.文件外引用
這種方式可以將<Head>中定義的樣式另存為一個文件,樣式表文件的擴(kuò)展名是.css。CSS作為一個外部文件引入的方式有兩種,一種是鏈接,另一種是導(dǎo)入。
<Html><Head><StyleType="Text/CSS"> H1{Font-Size:36px;Color:Blue} H2{Font-Size:60px;Color:Red}</Style></Head><Body> <H1>電子商務(wù)</H1> <H2>網(wǎng)站建設(shè)</H2></Body></Html><Html><Body><H1Style="Font-Size:36px;Color:Blue">電子商務(wù)</H1><PStyle="BackGround:Yellow;Font-Size:24px;Color:Red">網(wǎng)站建設(shè)</P></Body></Html>2-19.cssH1{Font-Size:36px;Color:Blue}P{BackGround:Yellow;Font-Size:24px;Color:Red}<Html><Head><LinkRel=StylesheetHref=“2-19.css"Type="Text/CSS"></Head><Body><H1>電子商務(wù)</H1><P>網(wǎng)站建設(shè)</P></Body></Html>CSS與標(biāo)記對應(yīng)的三種方式
HTML標(biāo)記和CSS樣式表標(biāo)記有三種方式:標(biāo)記選擇符類選擇符 在style標(biāo)記中定義一個“.類名”,然后再HTML標(biāo)記中使用class=“類名”就可以引入樣式。ID選擇符定義ID選擇符時,在樣式名之前加“#名字”,引用的時候使用“ID=名字”<Html><Head><StyleType="Text/CSS">.T1{Font-Size:36px;Color:Blue}.T2{Font-Size:24px;Color:Red}</Style></Head><Body><DivClass="T1">電子商務(wù)</Div><SpanClass="T2">網(wǎng)站建設(shè)</Span></Body></Html><Html><Head><StyleType="Text/CSS"> #ABC{Font-Size:36px;Color:Blue}</Style></Head><Body><PID=ABC>電子商務(wù)</P></Body></Html>ROBOTS什么是ROBOTS.TXT
是一個純文本文件,通過在文件中聲明該網(wǎng)站中不想被robots訪問的部分,這樣,該網(wǎng)站的部分或全部內(nèi)容就可以不被搜索引擎收錄了,或者指定搜索引擎只收錄指定的內(nèi)容。當(dāng)一個搜索機(jī)器人訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果找到,搜索機(jī)器人就會按照該文件中的內(nèi)容來確定訪問的范圍,如果該文件不存在,那么搜索機(jī)器人就沿著鏈接抓取。ROBOTSrobots.txt必須放置在一個站點的根目錄下,而且文件名必須全部小寫。例如: 禁止所有搜索引擎訪問網(wǎng)站的任何部分:
User-agent:*
Disallow:/允許所有的robot訪問
User-agent:*
Disallow:或者也可以建一個空文件“/robots.txt”file
禁止所有搜索引擎訪問網(wǎng)站的幾個部分(下例中的cgi-bin、tmp目錄)
User-agent:*
Disallow:/cgi-bin/
Disallow:/tmp/ROBOTS 常見搜索引擎的ROBOT名: 名稱搜索引擎
Baiduspider
Scooter
ia_archiver
Googlebot
ROBOTS什么是ROBOTSMETA
Robots.txt文件主要是限制整個站點或者目錄的搜索引擎訪問情況,而RobotsMETA標(biāo)簽則主要是針對一個個具體的頁面。和其他的META標(biāo)簽一樣,專門用來告訴搜索引擎ROBOTS如何抓取該頁的內(nèi)容。
ROBOTS注意的是
上述的robots.txt和RobotsMETA標(biāo)簽限制搜索引擎機(jī)器人(ROBOTS)抓取站點內(nèi)容的辦法只是一種規(guī)則,需要搜索引擎機(jī)器人的配合才行,并不是每個ROBOTS都遵守的。
目前絕大多數(shù)的搜索引擎機(jī)器人都遵守robots.txt的規(guī)則,而對于RobotsMETA標(biāo)簽,目前支持的并不多,但是正在逐漸增加,如著名搜索引擎GOOGLE就完全支持MIME英文全稱是“MultipurposeInternetEmailExtension”多功能Internet郵件擴(kuò)充服務(wù)作用:
服務(wù)器會借助MIME類型將它們發(fā)送的多媒體數(shù)據(jù)的類型告訴瀏覽器,讓瀏覽器知道接收到的信息哪些是MP3文件,哪些是Shockwave文件等等。瀏覽器使用相應(yīng)的插件讀取相關(guān)文件。MIME常見的MIME類型
超文本標(biāo)記語言文本 .html,.htmltext/html
普通文本 .txttext/plain
RTF文本 .rtfapplication/rtf
GIF圖形 .gifimage/gif
JPEG圖形 .ipeg,.jpgimage/jpeg
au聲音文件 .auaudio/basic
MIDI音樂文件mid,.midiaudio/midi,audio/x-midi
RealAudio音樂文件.ra,.ramaudio/x-pn-realaudio
MPEG文件 .mpg,.mpegvideo/mpeg
AVI文件 .avivideo/x-msvideo
GZIP文件 .gzapplication/x-gzip
TAR文件 .tarapplication/x-tar
Internet中有一個專門組織IANA來確認(rèn)標(biāo)準(zhǔn)的MIME類型,但I(xiàn)nternet發(fā)展的太快,很多應(yīng)用程序等不及IANA來確認(rèn)他們使用的MIME類型為標(biāo)準(zhǔn)類型。因此他們使用在類別中以x-開頭的方法標(biāo)識這個類別還沒有成為標(biāo)準(zhǔn),例如:x-gzip,x-tar等。2.2JavaScript腳本語言2.2.1JavaScript腳本語言概述2.2.2在JSP中引入JavaScript2.2.3JavaScript的數(shù)據(jù)類型與運算符2.2.4JavaScript的流程控制語句2.2.5函數(shù)的定義和調(diào)用2.2.6事件2.2.7JavaScript常用對象的應(yīng)用√√√√√√√2.2.1JavaScript腳本語言概述JavaScript是一種基于對象和事件驅(qū)動并具有安全性能的解釋型腳本語言可以用于編寫客戶端的腳本程序,由Web瀏覽器解釋執(zhí)行,還可以編寫在服務(wù)器端執(zhí)行的腳本程序,在服務(wù)器端處理用戶提交的信息并動態(tài)地向瀏覽器返回處理結(jié)果,在JSP中應(yīng)用JavaScript編寫客戶端腳本程序。2.2.2在JSP中引入JavaScript1.在頁面中直接嵌入JavaScript
在Web頁面中,可以使用<script>...</script>標(biāo)記對封裝腳本代碼,當(dāng)瀏覽器讀取到<script>標(biāo)記時,將解釋執(zhí)行其中的腳本。例如:<scriptlanguage="javascript">…</script>2.鏈接外部JavaScript在JSP中引入JavaScript的另一種方法是采用鏈接外部JavaScript文件的形式。例如:<scriptlanguage="javascript"src="javascript.js"></script>
說明:在外部JS文件中,不需要將腳本代碼用<script>和</script>標(biāo)記括起來。2.2.3JavaScript的數(shù)據(jù)類型與運算符
數(shù)據(jù)類型
變量
運算符√√√數(shù)據(jù)類型JavaStript有6種數(shù)據(jù)類型,如下表所示。類型含義說明示例int數(shù)值整型整數(shù),可以為正數(shù)、負(fù)數(shù)或017,80,0float浮點型浮點數(shù),可以使用實數(shù)的普通形式或科學(xué)計數(shù)法表示3.14159.27,6.16e4string字符串類型字符串,是用單引號或雙引號括起來的一個或多個字符'wgh',"平平淡淡才是真"boolean布爾型只有true或false兩個值true,falseobject對象類型null空類型沒有任何值undefined未定義類型指變量被創(chuàng)建,但未賦值時所具有的值變量變量是指程序中一個已經(jīng)命名的存儲單元,主要作用就是為數(shù)據(jù)操作提供存放信息的容器。在JavaScript中,可以使用命令var聲明變量,語法格式如下:varvariable;在聲明變量的同時也可以對變量進(jìn)行賦值:varvariable=11;由于JavaScript采用弱類型的形式,所以在聲明變量時,不需要指定變量的類型,而變量的類型將根據(jù)其變量賦值來確定。例如:varvarible=17; //數(shù)值型varstr="愛護(hù)地球"; //字符型變量但是變量命名必須遵循以下規(guī)則:(2)不能使用JavaScript中的關(guān)鍵字、函數(shù)名、對象名及自定義的方法名等。JavaScript的關(guān)鍵字如下表:(1)必須以字母或下劃線開頭,中間可以是數(shù)字、字母或下劃線,但是不能有空格或加號、減號等符號。abstractcontinuefinallyinstanceofprivatethisbooleandefaultfloatintpublicthrowbreakdoforinterfacereturntypeofbytedoublefunctionlongshorttruecaseelsegotonativestaticvarcatchextendsimplementsnewsupervoidcharfalseimportnullswitchwhileclassfinalinpackagesynchronizedwith運算符1、算術(shù)運算符算術(shù)運算符等同于數(shù)學(xué)運算,即在程序中進(jìn)行加、減、乘、除等運算。2、關(guān)系運算符關(guān)系運算符的基本操作過程是:首先對操作數(shù)進(jìn)行比較,這個操作數(shù)可以是數(shù)字也可以是字符串,然后返回一個布爾值true或false。3、邏輯運算符邏輯運算符返回一個布爾值,通常和比較運算符一起使用,常用于if、while和for語句中。運算符4、字符串運算符字符串運算符是用于兩個字符型數(shù)據(jù)之間的運算符,除了比較運算符外,還可以是+和+=運算符。5、賦值運算符最基本的賦值運算符是等于號“=”,用于對變量進(jìn)行賦值。6、位操作運算符位操作運算符用于對數(shù)值的位進(jìn)行操作,如向左或向右移位等。7、條件運算符條件運算符是JavaScript支持的一種特殊的3目運算符,同Java中的3目運算符類似操作數(shù)?結(jié)果1:結(jié)果22.2.4JavaScript的流程控制語句if條件判斷語句for循環(huán)語句while循環(huán)語句do…while循環(huán)語句switch語句√√√√√if條件判斷語句對變量或表達(dá)式進(jìn)行判定并根據(jù)判定結(jié)果進(jìn)行相應(yīng)的處理,可以使用if語句。if語句的語法格式如下:if(條件表達(dá)式){ 語句序列1//條件滿足時執(zhí)行}else{ 語句序列2//條件不滿足時執(zhí)行}for循環(huán)語句
for語句是JavaScript語言中應(yīng)用比較廣泛的條件語句。通常for語句使用一個變量作為計數(shù)器來執(zhí)行循環(huán)的次數(shù),這個變量就稱為循環(huán)變量。for語句的語法格式如下:for(循環(huán)變量賦初值;循環(huán)條件;循環(huán)變量增值){ 循環(huán)體}for語句可以使用break語句來中止循環(huán)語句的執(zhí)行。break語句默認(rèn)情況下是終止當(dāng)前的循環(huán)語句。<scripttype="text/javascript">varstr="7";for(i=0;i<4;i++){ str="0"+str;}document.write(str);document.write("<br>");</script>while循環(huán)語句while循環(huán)語句是另一種基本的循環(huán)語句,其結(jié)構(gòu)和for循環(huán)語句有些類似,但是while語句不包含循環(huán)變量的初始化及循環(huán)變量的步幅。其語法格式如下:while(條件表達(dá)式){ 循環(huán)體}使用while語句時,必須先聲明循環(huán)變量并且在循環(huán)體中指定循環(huán)變量的步幅,否則while語句將成為一個死循環(huán)。do…while循環(huán)語句do…while循環(huán)語句和while循環(huán)語句非常相似,所不同的是它是在循環(huán)底部檢測循環(huán)表達(dá)式,而不是像while循環(huán)語句那樣在循環(huán)頂部進(jìn)行檢測。這就保證了循環(huán)體至少被執(zhí)行一次。do…while語句的語法格式如下:do{ 循環(huán)體}while(條件表達(dá)式);switch語句switch是典型的多路分支語句,其作用與嵌套使用if語句基本相同,但switch語句比if語句更具有可讀性,而且switch語句允許在找不到一個匹配條件的情況下執(zhí)行默認(rèn)的一組語句。switch語句的語法格式如下:switch(expression){casejudgement1:statement1;break;casejudgement2:statement2;break;…default:defaultstatement;break;}2.2.5函數(shù)的定義和調(diào)用1.函數(shù)的定義在JavaScript中,定義函數(shù)最常的方法是通過function語句實現(xiàn),其語法格式如下:functionfunctionName([parameter1,parameter2,…]){ statements [returnexpression]}2.函數(shù)的調(diào)用調(diào)用不帶參數(shù)的函數(shù),則使用函數(shù)名加上括號即可調(diào)用的函數(shù)帶參數(shù),則在括號中加上需要傳遞的參數(shù)若函數(shù)有返回值,可以使用賦值語句將函數(shù)值賦給一個變量在JavaScript中,函數(shù)名區(qū)分大小寫2.2.6事件概述1.事件事件(Event),當(dāng)人與瀏覽器中Web頁面進(jìn)行某些類型的交互時,事件就發(fā)生了。例如,在頁面載入完畢事件;當(dāng)用戶單擊按鈕事件等。2.事件處理程序用于響應(yīng)某個事件而執(zhí)行的處理程序稱為事件處理程序,例如,當(dāng)用戶單擊按鈕時,將觸發(fā)按鈕的事件處理程序onClick。事件處理程序有以下兩種分配方式。(1)在JavaScript中分配事件處理程序<imgsrc="images/download.GIF"id="img_download"><scriptlanguage="javascript">varimg=document.getElementById("img_download");img.onclick=function(){ alert("單擊了圖片");}</script>在頁面中加入這段代碼并運行,則當(dāng)單擊圖片img_download時,將彈出“單擊了下載圖片”對話框。2.2.6事件注意:在JavaScript中分配事件處理程序時,事件處理程序名稱必須小寫,才能正確響應(yīng)事件。2.2.6事件(2)在HTML中分配事件處理程序在HTML中分配事件處理程序,只需要在HTML標(biāo)記中添加相應(yīng)的事件處理程序的屬性,并在其中指定作為屬性值的代碼或是函數(shù)名稱即可。例如:<imgsrc="images/download.GIF"onClick="alert('單擊了圖片');">在頁面中加入上面的代碼,并運行,則當(dāng)單擊圖片img_download時,將彈出“您單擊了圖片”對話框。2.2.6事件3.事件類型多數(shù)瀏覽器內(nèi)部對象都擁有很多事件,下面的表中將給出常用的事件、事件處理程序及何時觸這些事件處理程序。事件事件處理程序何時觸發(fā)bluronblur元素或窗口本身失去焦點時觸發(fā)changeonchange選中<select>元素中的選項或其他表單元素失去焦點時,并且在其獲取焦點后內(nèi)容發(fā)生過改變時觸發(fā)clickonclick單擊鼠標(biāo)左鍵時觸發(fā)focusonfocus任何元素或窗口本身獲得焦點時觸發(fā)keydownonkeydown鍵盤鍵被按下時觸發(fā),如果一直按著某鍵,則會不斷觸發(fā);當(dāng)返回false時,取消默認(rèn)動作loadonload頁面完全載入后,在window對象上觸發(fā);所有框架都載入后,在框架集上觸發(fā);<img>標(biāo)記指定的圖像完全載入后,在其上觸發(fā);或<object>標(biāo)記指定的對象完全載入后,在其上觸發(fā)selectonselect選中文本時觸發(fā)submitonsubmit單擊提交按鈕時,在<form>上觸發(fā)unloadonunload頁面完全卸載后,在window對象上觸發(fā);或者所有框架都卸載后,在框架集上觸發(fā)2.2.7JavaScript常用對象的應(yīng)用1.String對象
String對象是動態(tài)對象,需要創(chuàng)建對象實例后才能引用它的屬性和方法。
在創(chuàng)建一個String對象變量時,可以使用new運算符與來創(chuàng)建,也可以直接將字符串賦給變量。例如:strValue="hello"與strVal=newString("hello")是等價的String對象的常用屬性和方法如下表所示。2.2.7JavaScript常用對象的應(yīng)用屬性/方法說明length用于返回String對象的長度split(separator,limit)用separator分隔符將字符串劃分成子串并將其存儲到數(shù)組中,如果指定了limit,則數(shù)組限定為limit給定的數(shù),separator分隔符可以是多個字符或一個正則表達(dá)式,它不作為任何數(shù)組元素的一部分返回substr(start,length)返回字符串中從startIndex開始的length個字符的子字符串substring(from,to)返回以from開始、以to結(jié)束的子字符串replace(searchValue,replaceValue)將searchValue換成replaceValue并返回結(jié)果charAt(index)返回字符串對象中的指定索引號的字符組成的字符串,位置的有效值為0到字符串長度減1的數(shù)值;一個字符串的第一個字符的索引位置為0,第二個字符位于索引位置1,依次類推;當(dāng)指定的索引位置超出有效范圍時,charAt方法返回一個空字符串toLowerCase()返回一個字符串,該字符串中的所有字母都被轉(zhuǎn)換為小寫字母toUpperCase()返回一個字符串,該字符串中的所有字母都被轉(zhuǎn)換為大寫字母2.Date對象Date對象是一個有關(guān)日期和時間的對象。它具有動態(tài)性,即必須使用new運算符創(chuàng)建一個實例。例如:mydate=newDate();Date對象沒有提供直接訪問的屬性,只具有獲取和設(shè)置日期和時間的方法。Date對象的方法如下表所示。2.2.7JavaScript常用對象的應(yīng)用2.2.7JavaScript常用對象的應(yīng)用獲取日期和時間的方法說明設(shè)置日期和時間的方法說明getFullYear()返回用4位數(shù)表示的年份setFullYear()設(shè)置年份,用4位數(shù)表示getMonth()返回月份(0~11)setMonth()設(shè)置月份(0~11)getDate()返回日數(shù)(1~31)setDate()設(shè)置日數(shù)(1~31)getDay()返回星期(0~6)setDay()設(shè)置星期(0~6)getHours()返回小時數(shù)(0~23)setHours()設(shè)置小時數(shù)(0~23)getMinutes()返回分鐘數(shù)(0~59)setMinutes()設(shè)置分鐘數(shù)(0~59)getSeconds()返回秒數(shù)(0~59)setSeconds()設(shè)置秒數(shù)(0~59)getTime()返回Date對象的內(nèi)部毫秒表示setTime()使用毫秒形式設(shè)置Date對象2.2.7JavaScript常用對象的應(yīng)用3.window對象window對象是瀏覽器(網(wǎng)頁)的文檔對象模型結(jié)構(gòu)中最高級的對象,它處于對象層次的頂端提供了用于控制瀏覽器窗口的屬性和方法由于window對象使用十分頻繁,又是其他對象的父對象,所以在使用window對象的屬性和方法時,JavaScript允許省略window對象的名稱。window對象的常用屬性如下表所示。Window對象的常用屬性屬性描述frames表示當(dāng)前窗口中所有frame對象的集合location用于代表窗口或框架的Location對象,如果將一個RUL賦予給該屬性,那瀏覽器將加載并顯示該URL指定的文檔length窗口或框架包含的框架個數(shù)history對窗口或框架的History對象的只讀引用name用于存放窗口的名字status一個可讀寫的字符,用于指定狀態(tài)欄中的當(dāng)前信息parent表示包含當(dāng)前窗口的父窗口opener表示打開當(dāng)前窗口的父窗口closed一個只讀的布爾值,表示當(dāng)前窗口是否關(guān)閉;當(dāng)瀏覽器窗口關(guān)閉時,表示該窗口的window對象并不會消失,不過它的closed屬性被設(shè)置為trueWindow對象的常用方法方法描述alert()彈出一個警告對話框confirm()顯示一個確認(rèn)對話框,單擊“確認(rèn)”按鈕時返回true,否則返回falseprompt()彈出一個提示對話框,并要求輸入一個簡單的字符串close()關(guān)閉窗口focus()把鍵盤的焦點賦予給頂層瀏覽器窗口,在多數(shù)平臺上,這將使用窗口移到最前邊open()打開一個新窗口setTimeout(timer)在經(jīng)過指定的時間后執(zhí)行代碼clearTimeout()取消對指定代碼的延遲執(zhí)行resizeBy(offsetx,offsety)按照指定的位移量設(shè)置窗口的大小print()相當(dāng)于瀏覽器工具欄中的“打印”按鈕setInterval()周期執(zhí)行指定的代碼clearInterval()停止周期性地執(zhí)行代碼2.3Java語言基礎(chǔ)2.3.1面向?qū)ο蟪绦蛟O(shè)計2.3.2基本數(shù)據(jù)類型及基本數(shù)據(jù)類型間的轉(zhuǎn)換2.3.3常量與變量2.3.4運算符的應(yīng)用2.3.5流程控制語句2.3.6字符串處理2.3.7數(shù)組的創(chuàng)建與應(yīng)用2.3.8集合類的應(yīng)用2.3.9異常處理語句√√√√√√√√√2.3.1面向?qū)ο蟪绦蛟O(shè)計
面向?qū)ο蟪绦蛟O(shè)計是軟件設(shè)計和實現(xiàn)的有效方法,這種方法可以提供軟件的可擴(kuò)充性和可重用性??陀^世界中的一個事物就是一個對象,每個客觀事物都有自己的特征和行為。從程序設(shè)計的角度來看,事物的特性就是數(shù)據(jù),行為就是方法。面向?qū)ο蟮某绦蛟O(shè)計方法就是將客觀事物抽象成為“類”,并通過類的“繼承”實現(xiàn)軟件的可擴(kuò)充性和可重用性。2.3.1面向?qū)ο蟪绦蛟O(shè)計1.類的基本概念
類是用來創(chuàng)建對象的模板,它包含被創(chuàng)建的對象的狀態(tài)描述和方法的定義。要學(xué)習(xí)Java編程就必須學(xué)會怎樣去編寫類類把數(shù)據(jù)和對數(shù)據(jù)的操作封裝成一個整體。2.3.1面向?qū)ο蟪绦蛟O(shè)計在Java中定義類主要分為兩部分:類的聲明和類體。類體主要由兩部分構(gòu)成:一部分是成員變量的定義另一部分是成員方法的定義。2.定義類[修飾符]class<類名>[extends父類名][implements接口列表]{定義成員變量 定義成員方法}用于指定類的訪問權(quán)限,可選值為public、abstract和final用于指定要定義的類繼承于哪個父類用于指定該類實現(xiàn)的是哪些接口2.3.1面向?qū)ο蟪绦蛟O(shè)計3.定義成員方法
Java中類的行為由類的成員方法來實現(xiàn)。類的成員方法由方法的聲明和方法體兩部分組成,其一般格式如下:[修飾符]<方法返回值的類型><方法名>([參數(shù)列表]){ [方法體]}修飾符:可選參數(shù),用于指定方法的被訪問權(quán)限,可選值為public、protected和private。2.3.1面向?qū)ο蟪绦蛟O(shè)計【例】在Fruit類中聲明兩個成員方法grow()和harvest()publicclassFruit{//定義一個無返回值的成員方法 publicvoidgrow(){ System.out.println("果樹正在生長……"); }//定義一個返回值為String類型的成員方法 publicStringharvest(){ Stringrtn="水果已經(jīng)收獲……";//定義一個局部變量 returnrtn; }}2.3.1面向?qū)ο蟪绦蛟O(shè)計4.成員變量與局部變量
(1)聲明成員變量在類體中變量定義部分所聲明的變量為類的成員變量。用成員變量用來表示類的屬性。聲明方法如下:[修飾符][static][final][transient][volatile]<變量類型><變量名>;用于指定變量的被訪問權(quán)限,public、protected和private用于指定該成員變量為靜態(tài)變量,可以直接通過類名訪問。如果省略該關(guān)鍵字,則表示該成員變量為實例變量。用final修飾,表示常量(2)聲明局部變量方法體中聲明的變量和方法的參數(shù)則稱為局部變量。定義局部變量時不能使用public、protected、private和static關(guān)鍵字對局部變量進(jìn)行修飾,但可以使用final關(guān)鍵字。語法格式如下:[final]<變量類型><變量名>;2.3.1面向?qū)ο蟪绦蛟O(shè)計成員變量和局部變量的區(qū)別
有效范圍不同。成員變量在整個類內(nèi)都有效,而局部變量只在定義它的成員方法內(nèi)才有效。2.3.1面向?qū)ο蟪绦蛟O(shè)計5.構(gòu)造方法的概念及用途概念:
構(gòu)造方法是一種特殊的方法,它的名字必須與它所在類的名字完全相同,并且沒有返回值,也不需要使用關(guān)鍵字void進(jìn)行標(biāo)識。用途:
構(gòu)造方法用于對對象中的所有成員變量進(jìn)行初始化,在創(chuàng)建對象時立即被調(diào)用。注意:
如果用戶沒有定義構(gòu)造方法,Java會自動提供一個默認(rèn)的構(gòu)造方法,用來實現(xiàn)成員變量的初始。2.3.1面向?qū)ο蟪绦蛟O(shè)計6.創(chuàng)建Java類對象(1)聲明對象對象是類的實例,屬于某個已經(jīng)聲明的類。因此,在對對象進(jìn)行聲明之前,一定要先定義該對象的類。Fruitfruit;//只是建立一個引用,并置初值為null,并不分配內(nèi)存空間。
(2)為對象分配內(nèi)存
為對象分配內(nèi)存也稱為實例化對象。在Java中使用關(guān)鍵字new來實例化對象,例如:fruit=newFruit();Fruitfruit=newFruit();//將聲明與分配內(nèi)存相結(jié)合2.3.1面向?qū)ο蟪绦蛟O(shè)計7.對象的使用通過使用運算符“.”實現(xiàn)對成員變量的訪問和成員方法的調(diào)用。例:2-32.3.1面向?qū)ο蟪绦蛟O(shè)計8.對象的銷毀Java提供的垃圾回收機(jī)制可以自動判斷對象是否還在使用,并能夠自動銷毀不再使用的對象,收回對象所占用的資源。不需要手動完成這項工作。Java提供了一個名為finalize()的析構(gòu)方法,用于在對象被垃圾回收機(jī)制銷毀之前,由垃圾回收系統(tǒng)調(diào)用。但是垃圾回收系統(tǒng)的運行是不可預(yù)測的。在Java程序中,也可以使用析構(gòu)方法finalize()隨時來銷毀一個對象。析構(gòu)方法finalize()沒有任何參數(shù)和返回值,每個類有且只有一個析構(gòu)方法。2.3.1面向?qū)ο蟪绦蛟O(shè)計9.包
包(package)是Java提供的一種區(qū)別類的名字空間的機(jī)制,是類的組織方式,是一組相關(guān)類和接口的集合,它提供了訪問權(quán)限和命名的管理機(jī)制。Java中提供的包主要有以下3種用途:①將功能相近的類放在同一個包中,方便查找與使用;②由于在不同包中可以存在同名類,所以使用包在一定程度上可以避免命名沖突;③在Java中,某些訪問權(quán)限是以包為單位的。2.3.1面向?qū)ο蟪绦蛟O(shè)計創(chuàng)建包可以通過在類或接口的源文件中使用package語句實現(xiàn),package語句的語法格式如下:(1)創(chuàng)建包package包名;(2)使用包中的類
類可以訪問其所在包中的所有類,還可以使用其他包中的所有public類。訪問其他包中的public類可以有以下兩種方法。使用長名引用包中的類使用import語句引入包中的類com.wgh.Circcirc=newcom.wgh.Circ();importcom.wgh.Circ;2.3.2基本數(shù)據(jù)類型及基本數(shù)據(jù)類型間的轉(zhuǎn)換1.基本數(shù)據(jù)類型Java基本數(shù)據(jù)類型主要包括整數(shù)類型、浮點類型、字符類型和布爾類型。其中整數(shù)類型又分為字節(jié)型(byte)、短整型(short)、整型(int)和長整型(long),它們都用來定義一個整數(shù),唯一的區(qū)別就是它們所定義的整數(shù)所占用內(nèi)存的空間不同,因此整數(shù)的取值范圍也不同;Java中的浮點類型又包括單精度類型(float)和雙精度類型(double),在程序中使用這兩種類型來存儲小數(shù)。2.3.1面向?qū)ο蟪绦蛟O(shè)計各種基本數(shù)據(jù)類型的取值范圍、占用的內(nèi)存大小及默認(rèn)值數(shù)據(jù)類型關(guān)鍵字占用內(nèi)存取值范圍默認(rèn)值整數(shù)類型字節(jié)型byte8位128~1270短整型short16位32768~327670整型int32位2147483648~21474836470長整型long64位9223372036854775808~92233720368547758070浮點類型單精度型float32位1.4E-45~3.4028235E380.0f雙精度型double64位4.9E-324~1.7976931348623157E3080.0d字符型字符型char16位16位的Unicode字符,可容納各國的字符集;若以Unicode來看,就是'\u0000'到'\uufff';若以整數(shù)來看,范圍在0~65535,例如,65代表'A''\u0000'布爾型布爾型boolean8位true和falsefalse2.3.2基本數(shù)據(jù)類型及基本數(shù)據(jù)類型間的轉(zhuǎn)換
2.基本數(shù)據(jù)類型間的轉(zhuǎn)換
(1)自動類型轉(zhuǎn)換從低級類型向高級類型的轉(zhuǎn)換為自動類型轉(zhuǎn)換。(2)強(qiáng)制類型轉(zhuǎn)換如果把高級數(shù)據(jù)類型數(shù)據(jù)賦值給低級類型變量,就必須進(jìn)行強(qiáng)制類型轉(zhuǎn)換,否則編譯出錯。(欲轉(zhuǎn)換成的數(shù)據(jù)類型)值2.3.3常量與變量1.變量變量是Java程序中的基本存儲單元,它的定義包括變量名、變量類型和作用域幾個部分。(1)變量名是一個合法的標(biāo)識符,它是字母、數(shù)字、下劃線或美元符“$”的序列,Java對變量名區(qū)分大小寫,變量名不能以數(shù)字開頭,而且不能為關(guān)鍵字。(2)變量類型用于指定變量的數(shù)據(jù)類型,可以通過int、float、double和char等關(guān)鍵字來指定。(3)變量的有效范圍是指程序代碼能夠訪問該變量的區(qū)域,若超出該區(qū)域訪問變量,則編譯時會出現(xiàn)錯誤。根據(jù)有效范圍,變量分為:成員變量,局部變量。2.3.3常量與變量publicclassGame{ privateintmedal_All=800; //成員變量 publicvoidChina(){ intmedal_CN=100; //方法的局部變量 if(true){ //代碼塊 intgold=50; //代碼塊的局部變量 medal_CN+=50;//允許訪問medal_All-=150; //允許訪問 } gold=100; //編譯出錯 medal_CN+=100; //允許訪問 medal_All-=200; //允許訪問 } publicvoidOther(){ medal_All=800; //允許訪問 medal_CN=100;//編譯出錯,不能訪問其他方法中的局部變量 gold=10; //編譯出錯
}}2.3.3常量與變量2.常量在Java中寫下一個數(shù)值,這個數(shù)就稱為字面常數(shù)。它會存儲于內(nèi)存中的某個位置,用戶將無法改變它的值。在Java中,也可以用final關(guān)鍵字來定義常量。2.3.4運算符的應(yīng)用1.賦值運算符Java中的賦值運算符可以分為簡單賦值運算和復(fù)合賦值運算。
簡單賦值運算是將賦值運算符(=)右邊的表達(dá)式的值保存到賦值運算符左邊的變量中。
復(fù)合賦值運算是混合了其他操作(算術(shù)運算操作、位操作等)和賦值操作,如:sum+=i; //等同于sum=sum+i;2.3.4運算符的應(yīng)用Java中的賦值運算符如下表所示。運算符說明運算符說明=簡單賦值&=進(jìn)行與運算后賦值+=相加后賦值|=進(jìn)行或運算后賦值=相減后賦值^=進(jìn)行異或運算后賦值*=相乘后賦值<<=左移之后賦值/=相除后賦值>>=帶符號右移后賦值%=求余后賦值>>>=填充零右移后賦值2.3.4運算符的應(yīng)用2.算術(shù)運算符算術(shù)運算符支持整型和浮點型數(shù)據(jù)的運算,當(dāng)整型與浮點型數(shù)據(jù)進(jìn)行算術(shù)運算時,會進(jìn)行自動類型轉(zhuǎn)換,結(jié)果為浮點型。運算符說明舉例結(jié)果及類型+加法1.23f+10結(jié)果:11.23 類型:float
減法4.56-0.5f結(jié)果:4.06類型:double*乘法3*9L結(jié)果:27類型:long/除法9/4結(jié)果:2類型:int%求余數(shù)10%3結(jié)果:1類型:int2.3.4運算符的應(yīng)用3.關(guān)系運算符通過關(guān)系運算符計算的結(jié)果是一個boolean類型值。其中等于和不等于運算符適用于引用類型和所有的基本數(shù)據(jù)類型,而其他的關(guān)系運算符只適用于除boolean類型外的所有基本數(shù)據(jù)類型。運算符說明舉例結(jié)果運算符說明舉例結(jié)果>大于'a'>'b'false<=小于或等于1.67f<=1.67ftrue<小于200>100true==等于1.0==1true>=大于或等于11.11>=10true!=不等于'天'!='天'false2.3.4運算符的應(yīng)用4.邏輯運算符邏輯運算符經(jīng)常用來連接關(guān)系表達(dá)式,對關(guān)系表達(dá)式的值進(jìn)行邏輯運算,因此邏輯運算符的運算對象必須是邏輯型數(shù)據(jù),其邏輯表達(dá)式的運行結(jié)果也是邏輯型數(shù)據(jù)。運算符意義運算結(jié)果&邏輯與true&true:true ,false&false:false ,true&false:false|邏輯或true!true:true ,false!false:false ,true!false:true^異或true&true:false ,false&false:false ,true&false:true||短路或true&true:true ,false&false:false ,true&false:true&&短路與true&true:true ,false&false:false ,true&false:false!邏輯反!true:false,!false:true==相等true==true:true ,false==false:true ,true==false:false!=不相等true!=true:false ,false!=false:false,true!=false:true2.3.4運算符的應(yīng)用5.位運算符
位運算符用于對數(shù)值的位進(jìn)行操作,參與運算的操作數(shù)只能是int或long類型。在不產(chǎn)生溢出的情況下,左移一位相當(dāng)于乘以2。運算符說明實例&轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)進(jìn)行與運算1&1=1,1&0=0,0&1=0,0&0=0|轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)進(jìn)行或運算1|1=1,1|0=1,0|1=1,0|0=0^轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)進(jìn)行異或運算1^1=0,1^0=1,0^1=1,0^0=0~進(jìn)行數(shù)值的相反數(shù)減1運算~50=-50-1=-51>>向右移位15>>1=7<<向左移位15<<1=30>>>向右移位15>>>1=7<<=左移賦值運算符n<<3等價于n=n<<3>>=右移賦值運算符n>>3等價于n=n>>3>>>=無符號右移賦值運算符n>>>3等價于n=n>>>32.3.4運算符的應(yīng)用6.條件運算符條件運算符是三元運算符,其語法格式如下:<表達(dá)式>?a:b其中,表達(dá)式值的類型為邏輯型。若表達(dá)式的值為true,則返回a的值;若表達(dá)式的值為false,則返回b的值。2.3.4運算符的應(yīng)用7.自動遞增、遞減運算符與C、C++相同,Java語言也提供了自動遞增與遞減運算符,其作用是自動將變量值加1或減1。說明:自動遞增、遞減運算符的操作元只能為變量,不能為字面常數(shù)和表達(dá)式,且該變量類型必須為整型、浮點型或Java包裝類型。<%intn1=3;intn2=3;inta=2+(++n1); //先將變量n1加1,然后再執(zhí)行"2+4"intb=2+(n2++); //先執(zhí)行"2+3",然后再將變量n2加1System.out.println(a); //輸出結(jié)果為:6System.out.println(b); //輸出結(jié)果為:5System.out.println(n1); //輸出結(jié)果為:4System.out.println(n2); //輸出結(jié)果為:42.3.5流程控制語句1.分支語句所謂分支語句,就是對語句中不同條件的值進(jìn)行判斷,進(jìn)而根據(jù)不同的條件執(zhí)行不同的語句。在分支語句中主要有以下兩個語句:■If條件語句■switch多分支語句√√If…else語句if...else語句是條件語句最常用的一種形式,它針對某種條件有選擇地做出處理。通常表現(xiàn)為“如果滿足某種條件,就進(jìn)行某種處理,否則就進(jìn)行另一種處理”。其語法格式如下:if(條件表達(dá)式){ 語句序列1}else{ 語句序列2}If…else語句switch多分支語句switch語句是多分支選擇語句,常用來根據(jù)表達(dá)式的值選擇要執(zhí)行的語句。基本語法格式如下:switch(表達(dá)式){ case常量表達(dá)式1:語句序列1 [break;] case常量表達(dá)式2:語句序列2 [break;] …… case常量表達(dá)式n:語句序列n [break;] default:語句序列n+1 [break;]}If…else語句2.3.5流程控制語句2.循環(huán)語句所謂循環(huán)語句,主要就是在滿足條件的情況下反復(fù)執(zhí)行某一個操作。在Java中,提供了3種常用的循環(huán)語句,分別是:■for循環(huán)語句■while循環(huán)語句■do...while循環(huán)語句√√√for循環(huán)語句for循環(huán)語句也稱為計次循環(huán)語句,一般用于循環(huán)次數(shù)已知的情況。for循環(huán)語句的基本語法格式如下:for(初始化語句;循環(huán)條件;迭代語句){ 語句序列}while循環(huán)語句while循環(huán)語句也稱為前測試循環(huán)語句,它的循環(huán)重復(fù)執(zhí)行方式,是利用一個條件來控制是否要繼續(xù)重復(fù)執(zhí)行這個語句。while(條件表達(dá)式){ 語句序列}do...while循環(huán)語句do…while循環(huán)語句也稱為后測試循環(huán)語句,它的循環(huán)重復(fù)執(zhí)行方式,也是利用一個條件來控制是否要繼續(xù)重復(fù)執(zhí)行這個語句。與while循環(huán)所不同的是,它先執(zhí)行一次循環(huán)語句,然后再去判斷是否繼續(xù)執(zhí)行。do...while循環(huán)語句的基本語法格式如下:do{ 語句序列}while(條件表達(dá)式);//注意!語句結(jié)尾處的分號";"一定不能少2.3.5流程控制語句3.跳轉(zhuǎn)語句■break跳轉(zhuǎn)語句
break語句用于強(qiáng)行退出循環(huán),也就是忽略循環(huán)體中任何其他語句和循環(huán)條件的限制?!鯿ontinue跳轉(zhuǎn)語句
continue用于讓程序直接跳過其后面的語句,進(jìn)行下一次循環(huán)?!鰎eturn跳轉(zhuǎn)語句
return語句可以從一個方法返回,并把控制權(quán)交給調(diào)用它的語句。2.3.6字符串處理字符串由一連串字符組成,它可以包含字母、數(shù)字、特殊符號、空格或中文字,只要是鍵盤能輸入的文字都可以。它的表示方法是在文字兩邊加雙引號所有以雙引號包圍的字符串常數(shù),Java的編譯器都會將它編譯為String類對象。2.3.6字符串處理(1)初始化一個新創(chuàng)建的String對象,它表示一個空字符序列。如:
String()(2)導(dǎo)入?yún)?shù)。如:
Stringname=newString("簡單");(3)導(dǎo)入一個char[]數(shù)組。如:
String(char[]value);(4)導(dǎo)入一個char[]數(shù)組并決定元素值范圍。如:
String(char[]value,intoffset,intcount)(5)導(dǎo)入一個byte[]數(shù)組。如:
String(byte[]bytes)
//JAVA中一個英文字母是以1個byte表示,一個中文則以2個byte表示。(6)導(dǎo)入一個byte[]數(shù)組并決定元素值范圍。如:
String(byte[]bytes,intoffset,intlength)(7)導(dǎo)入一個StringBuffer對象。如:
String(StringBufferbuffer)1.字符串的聲明2.3.6字符串處理2.字符串類的常用方法方法名稱方法含義booleanendsWith(Stringsuffix)測試此字符串是否以指定的后綴結(jié)束booleanequals(ObjectanObject)比較此字符串與指定的對象booleanequalsIgnoreCase(StringanotherString)將此String與另一個String進(jìn)行比較,不考慮大小寫intindexOf()返回指定字符串在另一個字符串中的索引位置intlastIndexOf()返回最后一次出現(xiàn)的指定字符在另一個字符串中的索引位置intlength()返回此字符串的長度Stringreplace(charoldChar,charnewChar)返回一個新的字符串,它是通過用newChar替換此字符串中出現(xiàn)的所有oldChar而生成的booleanstartsWith(Stringprefix)測試指定字符串是否以指定的前綴開始Stringsubstring()返回一個字符串的子串char[]toCharArray()將指定字符串轉(zhuǎn)換為一個新的字符數(shù)組StringtoLowerCase()將指定字符串中的所有字符都轉(zhuǎn)換為小寫StringtoUpperCase()將指定字符串中的所有字符都轉(zhuǎn)換為大寫Stringtrim()返回字符串的副本,忽略前導(dǎo)空白和尾部空白staticStringvalueOf(booleanb)返回指定參數(shù)的字符串表示形式2.3.7數(shù)組的創(chuàng)建與應(yīng)用數(shù)組是由多個元素組成的,每個單獨的數(shù)組元素,就相當(dāng)于一個變量,可用來保存數(shù)據(jù),因此可以將數(shù)組視為一連串變量的組合。根據(jù)數(shù)組存放元素的復(fù)雜程度,可將數(shù)組依次分為一維數(shù)組、二維數(shù)組及多維(三維以上)數(shù)組。2.3.7數(shù)組的創(chuàng)建與應(yīng)用當(dāng)按照上述格式聲明數(shù)組后,系統(tǒng)會分配一塊連續(xù)的內(nèi)存空間供該數(shù)組使用。對于一維數(shù)組的賦值,語法格式如下:1.一維數(shù)組Java中的數(shù)組必須先聲明,然后才能使用。聲明一維數(shù)組有以下兩種格式:數(shù)據(jù)類型數(shù)組名[]=new數(shù)據(jù)類型[個數(shù)];數(shù)據(jù)類型[]數(shù)組名=new數(shù)據(jù)類型[個數(shù)];數(shù)據(jù)類型數(shù)組名[]={數(shù)值1,數(shù)值2,…,數(shù)值n};數(shù)據(jù)類型[]數(shù)組名={數(shù)值1,數(shù)值2,…,數(shù)值n};2.3.7數(shù)組的創(chuàng)建與應(yīng)用2.二維數(shù)組在Java語言中,實際上并不存在稱為“二維數(shù)組”的明確結(jié)構(gòu),而
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年限公司內(nèi)部食堂承包協(xié)議
- 物聯(lián)網(wǎng)解決方案合同
- 智能物流設(shè)備研發(fā)與生產(chǎn)合同
- 智能停車管理系統(tǒng)研發(fā)與應(yīng)用合同
- 智能交通系統(tǒng)研發(fā)與應(yīng)用合同
- 高級木質(zhì)進(jìn)口托盤銷售協(xié)議模板
- 在線烹飪教育平臺內(nèi)容制作合同
- 醫(yī)療機(jī)構(gòu)醫(yī)療廢物處理合同
- 2024定制商品購買協(xié)議樣本
- 人工智能能源管理與調(diào)度系統(tǒng)開發(fā)合同
- 2024年安徽法院聘用制書記員招聘筆試參考題庫附帶答案詳解
- 光伏運維技能大賽考試題庫及答案
- 2024年廣東廣州市花都空港經(jīng)濟(jì)發(fā)展有限公司招聘筆試參考題庫附帶答案詳解
- 術(shù)后患者功能性便秘的原因分析及護(hù)理措施
- 2024廣東佛山市三水海江怡樂建設(shè)投資有限公司招聘筆試參考題庫附帶答案詳解
- 印刷服務(wù)印刷清單一覽表
- 2024年人事行政行業(yè)培訓(xùn)資料
- 2024年云南省第一次高中畢業(yè)生復(fù)習(xí)統(tǒng)一檢測(一模)文科綜合試卷(含官方答案)
- 《認(rèn)識隸書(一)》名師課件
- 食堂醇基燃料應(yīng)急預(yù)案
- 2023學(xué)年完整公開課版時行程問題
評論
0/150
提交評論