




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)單元三:數(shù)據(jù)與異常處理程序設(shè)計(jì)單元三:數(shù)據(jù)與異常處理程序設(shè)計(jì) Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 知識(shí)目標(biāo) 掌握獲得字符創(chuàng)長(zhǎng)度、掌握獲得字符創(chuàng)長(zhǎng)度、比較、連接、提取、查比較、連接、提取、查詢字符串、大詢字符串、大 小寫轉(zhuǎn)化等操作的小寫轉(zhuǎn)化等操作的方法方法 掌握掌握StringBuffer對(duì)象的對(duì)象的常用方法常用方法 能力目標(biāo) 能夠能夠掌握獲得字符創(chuàng)長(zhǎng)掌握獲得字符創(chuàng)長(zhǎng)度、比較、連接、提取度、比較、連接、提取、查詢字符串、大小寫、查詢字符串、大小寫轉(zhuǎn)化等操作的方法轉(zhuǎn)化等操作的方法 運(yùn)用運(yùn)用StringBuffer字符串字符串進(jìn)行追加及字符化處理進(jìn)行追加及字符
2、化處理 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)4任務(wù)陳述任務(wù)陳述123知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備任務(wù)實(shí)施任務(wù)實(shí)施任務(wù)拓展任務(wù)拓展任務(wù)實(shí)訓(xùn)任務(wù)實(shí)訓(xùn)5 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)任務(wù)描述:任務(wù)描述:設(shè)計(jì)實(shí)現(xiàn)了一個(gè)天氣預(yù)報(bào)的數(shù)據(jù)處理的功能,能提供在線的信息編輯處理,比如插入刪除和修改,以及查找、替換等功能。對(duì)天氣預(yù)報(bào)數(shù)據(jù)處理要求為:u將每日的天氣用字符串?dāng)?shù)組表示;u將每日的天氣用轉(zhuǎn)為可編輯字符串?dāng)?shù)組表示;u將每日的天氣每個(gè)空格處替換為,,在日期前加序號(hào)格式為1、2、等;u獲得5日夜間的溫度。 1. 任務(wù)陳述任務(wù)陳述 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備生活中的字符串生活中的字符
3、串使用使用String對(duì)象存儲(chǔ)字符串對(duì)象存儲(chǔ)字符串String類位于類位于java.lang包中,具有豐富的方法包中,具有豐富的方法計(jì)算字符串的長(zhǎng)度、比較字符串、連接字符串、提取字符串 頻繁使用的字符串頻繁使用的字符串 “歡迎進(jìn)入歡迎進(jìn)入” “Hello World” “教育改變生活教育改變生活”String s = Hello World;String s = new String(Hello World);String s = new String(); Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 String類提供了類提供了length()方法,確定字符串方法,確定字符
4、串的長(zhǎng)度的長(zhǎng)度 注冊(cè)新用戶,要求密碼長(zhǎng)度不能小于注冊(cè)新用戶,要求密碼長(zhǎng)度不能小于6位位 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備public class Register public static void main(String args) Scanner input = new Scanner(System.in); String uname,pwd; System.out.print(請(qǐng)輸入用戶名:請(qǐng)輸入用戶名: ); uname=input.next(); System.out.print(請(qǐng)輸入密碼:請(qǐng)輸入密碼: ); pwd=input.next(); if(
5、 pwd.length()=6 ) System.out.print(注冊(cè)成功!注冊(cè)成功! ); else System.out.print(密碼長(zhǎng)度不能小于密碼長(zhǎng)度不能小于6位!位!); 判斷密碼長(zhǎng)度判斷密碼長(zhǎng)度 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 計(jì)算字符串長(zhǎng)度計(jì)算字符串長(zhǎng)度字符串字符串長(zhǎng)度長(zhǎng)度調(diào)用調(diào)用length() 方法獲得方法獲得返回字符串返回字符串中的字符數(shù)中的字符數(shù)調(diào)用方法調(diào)用方法:字符串標(biāo)識(shí)符字符串標(biāo)識(shí)符.length();方法原型方法原型:public int length() Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 Strin
6、g類提供了類提供了equals( )方法,比較存儲(chǔ)方法,比較存儲(chǔ)在兩個(gè)字符串對(duì)象的內(nèi)容是否一致在兩個(gè)字符串對(duì)象的內(nèi)容是否一致 2、注冊(cè)成功后,實(shí)現(xiàn)登錄驗(yàn)證。用戶、注冊(cè)成功后,實(shí)現(xiàn)登錄驗(yàn)證。用戶名為名為“TOM”,密碼為,密碼為“1234567” Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備public class Login public static void main(String args) Scanner input = new Scanner(System.in); String uname,pwd; System.out.print(請(qǐng)輸入用戶名:請(qǐng)輸入用戶名: )
7、; uname=input.next(); System.out.print(請(qǐng)輸入密碼:請(qǐng)輸入密碼: ); pwd=input.next(); if( uname.equals(TOM) & pwd.equals(1234567) ) System.out.print(登錄成功!登錄成功! ); else System.out.print(用戶名或密碼不匹配,登錄失敗!用戶名或密碼不匹配,登錄失??!); 比較用戶名和密碼比較用戶名和密碼是否正確是否正確 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 equals()方法比較原理方法比較原理 “=”和和equals()有
8、什么區(qū)別呢?有什么區(qū)別呢?字符串字符串 1字符串字符串 2equals():檢查組成字符串內(nèi)容的字符是否完全一致檢查組成字符串內(nèi)容的字符是否完全一致str1str2BDQN0 x2a486c0 x2a486cBDQNstr1=str2 ?true0 x2aac83str1=str2 ?false=:判斷兩個(gè)字符串在內(nèi)存中的首地址,即判斷是否是同一個(gè)字符串對(duì)象判斷兩個(gè)字符串在內(nèi)存中的首地址,即判斷是否是同一個(gè)字符串對(duì)象 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 使用使用equalsIgnoreCase()方法方法 使用使用toLowerCase()方法方法 使用使用toUpp
9、erCase( )方法方法 系統(tǒng)登錄時(shí)不考慮用戶名的大小寫問題系統(tǒng)登錄時(shí)不考慮用戶名的大小寫問題,實(shí)現(xiàn)登錄,實(shí)現(xiàn)登錄 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備public class Login public static void main(String args) if ( uname.equals(Jbit) & pwd.equals(Bdqn) ) System.out.print(登錄成功!登錄成功! ); else System.out.print(用戶名或密碼不匹配,登錄失?。∮脩裘蛎艽a不匹配,登錄失??!); uname. equalsIgnoreC
10、ase (Jbit ) & pwd. equalsIgnoreCase (Bdqn ) uname.toLowerCase().equals(Jbit ).toLowerCase()&pwd.toUpperCase().equals(Bdqn ).toUpperCase() Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備青青春春無無悔悔0 1 2 3 位置位置 方方 法法說說 明明 public int indexOf(int ch) 搜索第一個(gè)出現(xiàn)的字符搜索第一個(gè)出現(xiàn)的字符chch(或字符串或字符串valuevalue)public int indexOf(St
11、ring value)public int lastIndexOf(int ch) 搜索最后一個(gè)出現(xiàn)的字符搜索最后一個(gè)出現(xiàn)的字符chch(或字符串(或字符串valuevalue)public int lastIndexOf(String value)返回出現(xiàn)第一個(gè)匹配的位置,返回出現(xiàn)第一個(gè)匹配的位置, 如果沒如果沒有找到字符或字符串,則返回有找到字符或字符串,則返回-1 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備beginindex: 字符串的位置從字符串的位置從0開始算;開始算;endindex: 字符串的位置從字符串的位置從1開始算開始算 方方 法法 說說 明明publi
12、c String substring(int index)提取從位置索引開始的字符串部分提取從位置索引開始的字符串部分public String substring(int beginindex, int endindex)提取提取beginindexbeginindex和和endindexendindex之間的字符之間的字符串部分串部分public String trim()返回一個(gè)前后不含任何空格的調(diào)用字符返回一個(gè)前后不含任何空格的調(diào)用字符串的副本串的副本 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 合法的文件名應(yīng)該以合法的文件名應(yīng)該以.java結(jié)尾結(jié)尾 合法的郵箱名中至
13、少要包含合法的郵箱名中至少要包含“”和和“.”, 并檢查并檢查“”是否在是否在“.”之前之前 判斷判斷.java文件名是否正確,判斷郵箱格文件名是否正確,判斷郵箱格式是否正確式是否正確 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 /檢查檢查Java文件名文件名 int index = fileName.lastIndexOf(.); if(index!=-1 & index!=0 & fileName.substring(index+1, fileName.length().equals(java) fileCorrect = true; elseSystem
14、.out.println(文件名無效。文件名無效。); /檢查你的郵箱格式檢查你的郵箱格式if (email.indexOf() !=- 1 & email.indexOf(.) email.indexOf()emailCorrect = true;elseSystem.out.println(Email無效。無效。); Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備String word = Hello, ;word = word.trim();String s = word.concat(小魚兒小魚兒!);int index1 = s.indexOf(,);int i
15、ndex2 = s.indexOf(!);System.out.println(s.substring(_, _);index1+1index2 如果要打印輸出如果要打印輸出“小魚兒小魚兒”,應(yīng)填入,應(yīng)填入的代碼是什么?的代碼是什么? Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備 String類提供了類提供了split()方法,將一個(gè)字符串分方法,將一個(gè)字符串分割為子字符串,結(jié)果作為字符串?dāng)?shù)組返回割為子字符串,結(jié)果作為字符串?dāng)?shù)組返回有一段歌詞,每句都以空格有一段歌詞,每句都以空格“ ”結(jié)尾,結(jié)尾,請(qǐng)將歌詞每句按行輸出請(qǐng)將歌詞每句按行輸出 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)pu
16、blic class Lyric public static void main(String args) String words=長(zhǎng)亭外長(zhǎng)亭外 古道邊古道邊 芳草碧連天芳草碧連天 晚風(fēng)扶晚風(fēng)扶 柳笛聲殘柳笛聲殘 夕陽(yáng)山外山夕陽(yáng)山外山; String printword=new String100; System.out.println(*原歌詞格式原歌詞格式*n+words); System.out.println(n*拆分后歌詞格式拆分后歌詞格式*); printword=words.split( ); for(int i=0;i0;i=i-3) str.insert(i,); Syst
17、em.out.print(str); 從后往前每隔三位添加逗號(hào)從后往前每隔三位添加逗號(hào)獲取長(zhǎng)度獲取長(zhǎng)度 Java Java 程序設(shè)計(jì)程序設(shè)計(jì) 2. 知識(shí)準(zhǔn)備知識(shí)準(zhǔn)備在在StringBuffer類中存在很多和類中存在很多和String類一樣的方類一樣的方法,這些方法在功能上和法,這些方法在功能上和String類中的功能是完全一類中的功能是完全一樣的。但是有一個(gè)最顯著的區(qū)別在于,對(duì)于樣的。但是有一個(gè)最顯著的區(qū)別在于,對(duì)于StringBuffer對(duì)象的每次修改都會(huì)改變對(duì)象自身,這點(diǎn)對(duì)象的每次修改都會(huì)改變對(duì)象自身,這點(diǎn)是和是和String類最大的區(qū)別。類最大的區(qū)別。 Java Java 程序設(shè)計(jì)程序設(shè)
18、計(jì)3.1 3.1 解決步驟解決步驟(1) 打開Eclipse,創(chuàng)建一個(gè)類WeatherForcast;(2) 聲明一個(gè)String類的對(duì)象WeatherForcast;(3) 利用String類的求長(zhǎng)度、查找子字符串,并將天氣預(yù)報(bào)的內(nèi)容按天分為兩個(gè)String對(duì)象;(4) 用數(shù)組表示兩個(gè)String對(duì)象;(5) 利用String類實(shí)現(xiàn)查找替換獲取長(zhǎng)度等操作;(6) 利用StringBuffer實(shí)現(xiàn)追加和刪除等操作;(7) 創(chuàng)建測(cè)試類,運(yùn)行程序; 3. 任務(wù)實(shí)施任務(wù)實(shí)施 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)3.2 3.2 任務(wù)代碼任務(wù)代碼public class WeatherForcast p
19、ublic static String splite(String weatherData, String dateOfWeather) String eachDayOfReport = new String2; / 存放每天的天氣情況存放每天的天氣情況eachDayOfReport = weatherData.split(dateOfWeather); eachDayOfReport1 = dateOfWeather + eachDayOfReport1; return eachDayOfReport; 3. 任務(wù)實(shí)施任務(wù)實(shí)施 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)public static
20、void getNightTemperature(String data, String night) int begin = data.indexOf(night);int end = 0;for (int i = 0; i 3; i+) / 向后移向后移3個(gè)個(gè),,返回索引,返回索引begin = data.indexOf(, begin + 1);end = data.indexOf(, begin + 1);System.out.println(溫度溫度: + data.substring(begin + 1, end);/ 顯示顯示夜間溫度夜間溫度/ 獲得夜間溫度獲得夜間溫度 3. 任
21、務(wù)實(shí)施任務(wù)實(shí)施 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)String eachDayOfReport = new String2;/ 存放每天的天氣存放每天的天氣eachDayOfReport = splite(weatherforcast, 6日日);for (int count = 0; count eachDayOfReport.length; count+)System.out.println(eachDayOfReportcount);StringBuffer stb = new StringBuffer(eachDayOfReport0),new StringBuffer(eachDa
22、yOfReport1) ; / 創(chuàng)建可編輯字符串?dāng)?shù)組創(chuàng)建可編輯字符串?dāng)?shù)組for (int i = 0; i stb.length; i+) String modifiedText = (stbi.toString().replaceAll( , ,);stbi.replace(0, stbi.capacity(), );stbi.append(modifiedText);/ 追加修改后的文本追加修改后的文本stbi.append(3級(jí)級(jí));/ 追加微風(fēng)追加微風(fēng)3級(jí)級(jí)int b = stbi.toString().indexOf();stbi.delete(b, b + .length();/
23、刪除第一個(gè)刪除第一個(gè)stbi.insert(0, Integer.toString(i + 1) + 、);/ 插入序號(hào)插入序號(hào) 上面上面x 3. 任務(wù)實(shí)施任務(wù)實(shí)施 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)4. 任務(wù)拓展任務(wù)拓展StringTokenizer類的構(gòu)造方法及描述類的構(gòu)造方法及描述uStringTokenizer(String str) 為字符串為字符串str構(gòu)造一個(gè)字符串分析器。使用默認(rèn)的定構(gòu)造一個(gè)字符串分析器。使用默認(rèn)的定界符,即空格符(如果有多個(gè)連續(xù)的空格符,則界符,即空格符(如果有多個(gè)連續(xù)的空格符,則看作是一個(gè))、換行符、回車符、看作是一個(gè))、換行符、回車符、Tab符號(hào)等。符號(hào)等。uStringTokenizer(String str, String delim) 為字符串為字符串str構(gòu)造一個(gè)字符串分析器,并使用字符串構(gòu)造一個(gè)字符串分析器,并使用字符串delim作為定界符。作為定界符。 Java Java 程序設(shè)計(jì)程序設(shè)計(jì)4. 任務(wù)拓展任務(wù)拓展StringTokenizer
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 報(bào)社招聘考試題及答案
- 安全急救考試題及答案
- 愛心樹考試題及答案
- python大學(xué)考試題及答案
- pcr培訓(xùn)考試題及答案
- mhk考試題及答案2015
- cpa稅法考試題及答案
- 晚上食堂人員管理制度
- 景觀施工項(xiàng)目管理制度
- 天然氣公司自評(píng)管理制度
- 2025年醫(yī)保政策考試題庫(kù)及答案:基礎(chǔ)解讀與醫(yī)保政策法規(guī)試題試卷
- 腫瘤日間化療規(guī)范化管理
- 2025至2030年中國(guó)液化設(shè)備行業(yè)投資前景及策略咨詢研究報(bào)告
- 湖北省武漢市部分重點(diǎn)中學(xué)2022-2023學(xué)年高一下學(xué)期期末聯(lián)考數(shù)學(xué) 含解析
- 行政-接機(jī)流程及禮儀(定稿)
- DB44-T 2579-2024 嶺南傳統(tǒng)天灸技術(shù)操作規(guī)范
- 房地產(chǎn)市場(chǎng)報(bào)告 -2025年第一季度西安寫字樓和零售物業(yè)市場(chǎng)報(bào)告
- 中國(guó)成人呼吸系統(tǒng)疾病家庭氧療指南(2024年)解讀課件
- 2026屆新高考地理精準(zhǔn)復(fù)習(xí)-從“情境”到“實(shí)踐”+破解人文地理認(rèn)知困境的具身化教學(xué)感悟
- 2024 - 2025學(xué)年人教版三年級(jí)下冊(cè)美術(shù)期末考試試卷及答案
- 上海嘉定區(qū)2025年公開招聘農(nóng)村(村務(wù))工作者筆試題帶答案分析
評(píng)論
0/150
提交評(píng)論