javalang中的常用類_第1頁
javalang中的常用類_第2頁
javalang中的常用類_第3頁
javalang中的常用類_第4頁
javalang中的常用類_第5頁
已閱讀5頁,還剩30頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、JAVASE,java.lang中的常用類,本章學(xué)習(xí)目標(biāo),了解java.lang 包 掌握包裝類 掌握String和StringBuffer類 運(yùn)用類Math、Class和Object類,包裝類簡介,包裝類-1,int num = 10 ;,原始數(shù) 據(jù)類型,原始數(shù)據(jù)類型聲明的變量,對象,不是對象,是對象,怎么變 成對象,java.lang提供,原始數(shù)據(jù)類型,包裝類,包裝類-2,包裝類-3,public class LangDemo public static void main(String args) Boolean objBool = new Boolean(true); Characte

2、r objChar = new Character(X); Integer objInt = new Integer(100); Long objLong = new Long(2568); Double objDou = new Double(3.1415); System.out.println(objBool); System.out.println(objChar); System.out.println(objInt); System.out.println(objLong); System.out.println(objDou); 注:,包裝類的靜態(tài)方法 valueOf(),用于將

3、字符串轉(zhuǎn)成相應(yīng)包裝類的對象。,public class LangDemo public static void main(String args) String str = 128; /如果轉(zhuǎn)換失敗,將會(huì)引發(fā)NumberFormatException異常 /引發(fā)失敗的原因:1。數(shù)值超過范圍 2.字符串不是表示數(shù)值 Byte objByte = Byte.valueOf(str); Short objShort = Short.valueOf(str); Integer objInt = Integer.valueOf(str); Long objLong = Long.valueOf(str)

4、; System.out.println(objByte); System.out.println(objShort); System.out.println(objInt); System.out.println(objLong); ,注: 除了Boolean和Character 類以外,其他的包裝類都有靜態(tài)的parseXXX()方法。(XXX指代具體的數(shù)據(jù)類型),public class ParseTest public static void main(String args) String str = 116; int i = Integer.parseInt(str); short

5、s = Short.parseShort(str); byte b = Byte.parseByte(str); long l = Long.parseLong(str); float f = Float.parseFloat(str); double d = Double.parseDouble(str); System.out.println(i); System.out.println(s); System.out.println(b); System.out.println(l); System.out.println(f); System.out.println(d); ,范例演示,

6、包裝類-4,包裝類-5,public class CharacterDemo public static void main(String args) char charArray = *, 7, b, , A; for (int i = 0; i charArray.length; i+) if (Character.isDigit(charArrayi) System.out.println(charArrayi + 是一個(gè)數(shù)字。); if (Character.isLetter(charArrayi) System.out.println(charArrayi + 是一個(gè)字母。); if

7、 (Character.isWhitespace(charArrayi) System.out.println(charArrayi + 是一個(gè)空格。); if (Character.isLowerCase(charArrayi) System.out.println(charArrayi + 是小寫形式。); if (Character.isUpperCase(charArrayi) System.out.println(charArrayi + 是大寫形式。); ,范例演示,String類,String 類,字符串字面量,對象,未修改的原始字符串,使用 String 類的方法,可以更改字符

8、串版本,原始字符串保持不變,String類構(gòu)造方法,范例演示,public class StringDemo public static void main(String args) char aryChar = N, e, w, F,u,t,u,r,e; String str1 = NewFuture; /利用一個(gè)字符串常量值創(chuàng)建新的字符串 String str2 = new String(NewFuture); /利用一個(gè)字符型數(shù)組創(chuàng)建新的字符串 String str3 = new String(aryChar); System.out.println(str1); System.out.

9、println(str2); System.out.println(str3); ,Storage String pool String message = “stringLiteral;,Example: String message = new String(“Hello); String message = Welcome to Java;,Stringstr=newString(abc);,Question: How many String objects are created?,Two,Constructor: publicString(Stringoriginal) /other

10、code. ,Note:The parameter is a String object,Stringa= abc; String b= abc;,Difference between new and shorthand initializer,Question: How many String objects are created?,One,String類字符串長度,String str = “John Smith”,長度是?,使用length()方法獲取,哦,str的長度是“10”,public class StringDemo public static void main(Strin

11、g args) String str1 = John Smith; String str2 = new String(I Love Java); System.out.println(str1.length(); System.out.println(str2.length(); ,String類字符串比較1,字符串 1,字符串 2,由 equals() 方法確定,同一個(gè)對象,用 = 運(yùn)算符檢查,檢查字符串是否指向同一個(gè)或不同的對象,檢查組成字符串內(nèi)容的字符,public class StringDemo public static void main(String args) public

12、static void main(String args) String str1 = 學(xué)習(xí)新技術(shù)把握新未來; String str2 = 學(xué)習(xí)新技術(shù)把握新未來; String str3 = new String(學(xué)習(xí)新技術(shù)把握新未來); String str4 = new String(學(xué)習(xí)新技術(shù)把握新未來); if (str1 = str2) System.out.println(str1和str2指向同一字符串); else System.out.println(str1和str2分別指向不同字符串); if (str1.equals(str2) System.out.println(s

13、tr1和str2的內(nèi)容完全相同); else System.out.println(str1和str2的內(nèi)容不相同); if (str3 = str4) System.out.println(str3和str4指向同一字符串); else System.out.println(str3和str4分別指向不同字符串); if (str3.equals(str4) System.out.println(str3和str4的內(nèi)容完全相同); else System.out.println(str3和str4的內(nèi)容不相同); ,String類-字符串比較2,String類字符串搜索,public cl

14、ass StringDemo public static void main(String args) String strEmail = ; int index; System.out.println(E-mail地址: + strEmail); index = strEmail.indexOf(); System.out.println(字符出現(xiàn)的索引: + index); index = strEmail.indexOf(sun); System.out.println(字符串sun出現(xiàn)的索引: + index); index = strEmail.lastIndexOf(a); Sys

15、tem.out.println(a字符最后一次出現(xiàn)的索引: + index); ,String類字符串提取,public class StringDemo public static void main(String args) String str1 = Java is OOP; String str2 = new String(NewFuture); System.out.println(str1.charAt(2); System.out.println(str1.substring(5); System.out.println(str1.substring(2, 9); System.

16、out.println(str1.concat(str2); System.out.println(str1 + str2); System.out.println(str1.replace(a, e); System.out.println(str1.trim(); ,public String substring(int beginIndex) Returns a new string that is a substring of this string. The substring begins at the specified index and extends to the end

17、of this string. public String substring(int beginIndex, int endIndex) Returns a new string that is a substring of this string. The substring begins at the specified beginIndex and extends to the character at index endIndex - 1. Parameters: the beginning index, inclusive. Returns: the specified subst

18、ring. Throws: StringIndexOutOfBoundsException if the beginIndex is out of range.,String s1 = Welcome to Java; String s2 = s1.substring(0, 11) + HTML;,String類更改字符串大小寫,public class StringDemo public static void main(String args) String str1 = Java is OOP; String str2; str2 = str1.toLowerCase(); System

19、.out.println(str2); str2 = str1.toUpperCase(); System.out.println(str2); ,StringBuffer類-1,StringBuffer類用于表示可以修改的字符串。 使用連接運(yùn)算符(+)與字符串一起使用自動(dòng)創(chuàng)建StringBuffer對象。,StringBuffer類-2,StringBuffer類-3,public class StringBufferDemo public static void main(String args) StringBuffer strBuf = new StringBuffer(Java);

20、strBuf.append( Guide Ver1/); System.out.println(strBuf); strBuf.append(3); System.out.println(strBuf); strBuf.insert(5, Student); System.out.println(strBuf); strBuf.setCharAt(20, .); System.out.println(strBuf); strBuf.reverse(); System.out.println(strBuf); String str = strBuf.toString(); System.out.

21、println(str); ,范例演示,不可變性-1,創(chuàng)建,String類,直接修改,StringBuffer類,與String同等的類,表示可增加和可編寫的字符序列,可以將字符插入到中間位置或?qū)⒆址郊拥侥┒?解決方案,The StringBuffer class is an alternative to the String class. In general, a string buffer can be used wherever a string is used.StringBuffer is more flexible than String. You can add, inser

22、t, or append new contentsinto a string buffer. However, the value ofa String object is fixed once the string is created.,StringBuffer類-1,不可變性-2,public class Immutablity public static void main(String args) String str1=Java; /創(chuàng)建一個(gè)String類的實(shí)例變量 String str2=str1; /保存一個(gè)引用副本 /創(chuàng)建一個(gè)StringBuffer類的實(shí)例變量 String

23、Buffer stringBuffer1=new StringBuffer(NewFuture); /保存一個(gè)StringBuffer對象引用副本 StringBuffer stringBuffer2=stringBuffer1; System.out.println (在改變之前:); System.out.println (str1=str2):+(str1=str2); System.out.println (stringBuffer1=stringBuffer2):+(stringBuffer1=stringBuffer2);/改變值 str1=str1+ is OOP; string

24、Buffer1=stringBuffer1.append(study Java); System.out.println (在改變之后:); System.out.println (str1=str2):+(str1=str2); System.out.println (str1=+str1); System.out.println (str2=+str2); System.out.println (stringBuffer1=stringBuffer2):+(stringBuffer1=stringBuffer2); System.out.println (stringBuffer1=+st

25、ringBuffer1); System.out.println (stringBuffer2=+stringBuffer2); ,范例演示,Math類,Math類,靜 態(tài) 方 法,基本數(shù)學(xué)運(yùn)算,幾何運(yùn)算,Math類方法,public class MathDemo /* 構(gòu)造方法 */ protected MathDemo() /* main 方法演示 Math 類的不同方法 * param args 傳遞至 main 方法的參數(shù) */ public static void main(String args) /* 此變量存儲(chǔ) num 的值*/ int num = 38; /* 該變量存儲(chǔ) n

26、um1 的值*/ float num1 = 65.7f; System.out.println(Math.ceil(num); System.out.println(Math.ceil(num1); System.out.println(Math.floor(num); System.out.println(Math.floor(num1); System.out.println(Math.round(num); System.out.println(Math.round(num1); ,范例演示,Object類-1,是其他所有類的共同父類。 用戶類沒有擴(kuò)展自其他類,默認(rèn)擴(kuò)展自O(shè)bject類。

27、,Object類-2,class Student private String mName; private int mAge; public Student(String name, int age) /構(gòu)造方法 mName = name; mAge = age; /重寫Object類中的toString方法 public String toString() String str = 姓名: + mName + , 年齡: + mAge + 歲; return (str); public class ToStringDemo public static void main(String ar

28、gs) Student std = new Student(張三, 18); System.out.println(std); /默認(rèn)調(diào)用toString方法 ,范例演示,自動(dòng)創(chuàng)建對象,Class類-1,無需聲明,Class對象,怎么創(chuàng)建呢?,通過對象的getClass()方法,使用Class的靜態(tài)方法forName(),Class類-2,范例演示,public class ClassDemo public static void main(String args) try /*使用forName方法獲得任意一個(gè)類的類描述對象 這里以StringBuffer類為例 forName方法有可能拋異常,必須捕捉*/ Class cls = Class.forName(java.lang.StringBuffer); /循環(huán)打印父類信息,直到?jīng)]有父類 while

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論