下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、實驗十五 Java異常與常用工具類編程§15.1實驗指導1、異常處理1)常見異常程序在運行期間出現異常,如數據庫不能連接,數組越界,IO異常,被零除算術異常等. ArrayIndexOutOfBoundsException IOException ArithmeticException NullPointerException 未實例化異常 。2)處理異常 try ./正常需要執(zhí)行代碼,可能會出現異常 catch(Exception ex) ./出現異常,異常處理代碼 3)finally try . catch(Exception ex) . finally ./*無論是否發(fā)生異常,
2、是否捕獲到異常,都會執(zhí)行的代碼*/ 4)throws 聲明異常 public void fun() throws Exception ./函數fun()可能發(fā)生異常,該函數并未處理異常try.catch. /由函數的調用者處理該異常. 示例1 public static String fun() throws Exception BufferedReader buf=new BufferedReader(new InputStreamReader(System.in); return buf.readLine(); public static void main(String args) tr
3、y String s=fun(); catch (Exception e) e.printStackTrace(); 5)throw 拋出異常 用戶自定義異常 class CircleException extends Exception private String msg; public CircleException() public CircleException(String msg) this.msg=msg; public String toString() return msg; class Circle public double area(double r) throws
4、CircleException if(r<0) throw new CircleException("圓半徑不能小于0"); else return Math.PI*r*r; public static void main(String args) try Circle cir=new Circle(); System.out.println(cir.area(-12); catch (CircleException e) System.out.println(e); 2、String類使用String 類表示字符串。 在 Java 程序中所有的字符串常量,如 &qu
5、ot;abc",都被實現為這個類的實例。 1)、構造函數 String s1="java" String s2=new String("java"); 2)、比較函數 =比較引用是否相同 if(s1=s2) /返回falseequals():比較串內容是否相同 if(s1.equals(s2)/返回true compareTo():比較內容,返回數字 pareTo(s2) 如果s1>s2 則返回>0 如果s1=s2 則返回0 如果s1<s2 則返回<0 3)、取子串substring(),取字符charAt(index)
6、 String s1="hello java" s1.substring(start,end); s1.substring(0,3);/start到end-1 String s2=s1.substring(6,10); 4)、分割split(); String s1="c+,java," String str=s1.split(","); String s2="c+.java.vb" String s2="c+.java.vb dotnet" String str=s2.split("
7、.| "); for(int i=0;i<str.length;i+) System.out.println(stri);2、StringBuffer類StringBuffer public StringBuffer()構造一個不包含字符的字符串緩沖區(qū),其初始的容量設為 16 個字符。 StringBuffer public StringBuffer(int length):構造一個不包含字符的字符串緩沖區(qū),其初始的容量由參數 length 設置。 StringBuffer public StringBuffer(String str):構造一個字符串緩沖區(qū),來表示和字符串參數
8、相同的字符序列。 length public int length():返回字符串緩沖區(qū)的長度 (字符數)。 capacity public int capacity():返回字符串緩沖區(qū)的當前容量。 該容量表示可用于插入新的字符的存儲空間;超出該容量時會發(fā)生新的容量分配。 ensureCapacity public synchronized void ensureCapacity(int minimumCapacity):保證緩沖區(qū)的容量至少等于指定的最小數。 如果字符串緩沖區(qū)的當前容量少于該參數,則分配一個新的更大的內部緩沖區(qū)。 新容量將取如下參數中較大的一個: setLength pub
9、lic synchronized void setLength(int newLength):設置該字符串緩沖區(qū)的長度。 如果參數 newLength 小于該字符串緩沖區(qū)的當前長度。 該字符串緩沖區(qū)將被截斷來包含恰好等于由參數 newLength 給出的字符數。 append public synchronized StringBuffer append(Object obj):把 Object 型參數的字符串表示添加到該字符串緩沖區(qū)。 StringBuffer x = new StringBuffer().append("a").append(4).append(&quo
10、t;c") .toString();insert public synchronized StringBuffer insert(int offset, Object obj):把 Object 型參數的字符串表示插入到字符串緩沖區(qū)。 reverse public synchronized StringBuffer reverse():該字符串緩沖區(qū)的字符序列被其反向字符序列所替換。 toString public String toString():轉換為一個表示該字符串緩沖區(qū)數據的字符串。 分配一個新的 String 對象,并且用字符串緩沖區(qū)所表示的字符序列進行初始化。 于是此
11、String 被返回。 隨后緩沖區(qū)發(fā)生的變化不再影響該 String 的內容。 3、日期類示例1)獲取服務器端當前日期: import java.util.Date; Date myDate = new Date();2) 獲取當前年、月、日:Date myDate = new Date();int thisYear = myDate.getYear() + 1900;/thisYear = 2009int thisMonth = myDate.getMonth() + 1;/thisMonth = 10int thisDate = myDate.getDate();/thisDate = 3
12、03)按本地時區(qū)輸出當前日期Date myDate = new Date();out.println(myDate.toLocaleString();輸出結果為:2003-5-30 4)按照指定格式打印日期import java.util.Date;import java.text.DateFormat;Date dNow = new Date();SimpleDateFormat formatter =new SimpleDateFormat("E yyyy.MM.dd 'at' hh:mm:ss a zzz");System.out.println(&q
13、uot;It is " + formatter.format(dNow); 輸出的結果為:It is 星期五 2003.05.30 at 11:30:46 上午 CST 5) 計算日期之間的間隔 getTime()函數返回日期與1900-01-01 00:00:00相差的毫秒數Import java.util.Date;import java.text.DateFormat;String input = "2003-05-01"SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-
14、dd");Date d1 = null;Date d2 = new Date();long diff = d2.getTime() - d1.getTime();out.println("Difference is " + (diff/(1000*60*60*24) + " days.");輸出結果為:Difference is 29 days. §15.2實驗題目1、用Java 異常處理機制實現一個處理數組索引是否越界程序2、輸入兩個數據,控制臺顯示兩個數的商。當除數number2為0時,捕獲異常,并在控制臺上打印異常信息。3、使用類String類
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉儲物流中心材料運輸樣本
- 高端會所裝修監(jiān)理合同樣本
- 2025年度肉羊養(yǎng)殖合作社與肉羊屠宰加工企業(yè)銷售合同3篇
- 2025年建筑行業(yè)標準制定合同3篇
- 2025年度鋼模板生產與質量保證合同
- 2025年房產貸款售房合同協(xié)議范本3篇
- 白銀2025年甘肅白銀礦冶職業(yè)技術學院春季引進博士研究生13人筆試歷年參考題庫附帶答案詳解
- 2025年度生態(tài)住宅小區(qū)大樹修剪與綠化改造合同3篇
- 2025年文藝晚會演出場地布置合同3篇
- 2025年度水利工程勘察設計合同6篇
- 監(jiān)理報告范本
- 店鋪交割合同范例
- 大型活動LED屏幕安全應急預案
- 2024年內蒙古包頭市中考道德與法治試卷
- 湖南省長沙市2024-2025學年高二上學期期中考試地理試卷(含答案)
- 自來水質量提升技術方案
- 金色簡約蛇年年終總結匯報模板
- 農用地土壤環(huán)境質量類別劃分技術指南(試行)(環(huán)辦土壤2017第97號)
- 反向開票政策解讀課件
- 工程周工作計劃
- 房地產銷售任務及激勵制度
評論
0/150
提交評論