Java語言最新實(shí)用教程(第2課)課件_第1頁
Java語言最新實(shí)用教程(第2課)課件_第2頁
Java語言最新實(shí)用教程(第2課)課件_第3頁
Java語言最新實(shí)用教程(第2課)課件_第4頁
Java語言最新實(shí)用教程(第2課)課件_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Java語言最新實(shí)用教程(第2課)Java實(shí)用教程第二課第二課第1章 JAVA語言概述Java語言最新實(shí)用教程(第2課)目錄n1.5.6 Math類n1.5.7 數(shù)據(jù)類型轉(zhuǎn)換n1.6 字符串和日期Java語言最新實(shí)用教程(第2課)1.5.6 Math類類n在編寫程序時(shí),可能需要計(jì)算一個(gè)數(shù)的平方根、絕對(duì)值、獲取一個(gè)隨機(jī)數(shù)等等。java.lang包中的類包含許多用來進(jìn)行科學(xué)計(jì)算的類方法,這些方法可以直接通過類名調(diào)用。另外,Math類還有兩個(gè)靜態(tài)常量,E和PI,它們的值分別是: 2.70452354和 3.149323846。Java語言最新實(shí)用教程(第2課)Math類常用方法 npublic st

2、atic long abs(double a) 返回a的絕對(duì)值。npublic static double max(double a,double b) 返回a、b的最大值。npublic static double min(double a,double b) 返回a、b的最小值。npublic static double random() 產(chǎn)生一個(gè)0到1之間的隨機(jī)數(shù)(不包括0和1)。npublic static double pow(double a,double b) 返回a的b次冪。npublic static double sqrt(double a) 返回a的平方根。npublic

3、 static double log(double a) 返回a的對(duì)數(shù)。npublic static double sin(double a) 返回正弦值。npublic static double asin(double a) 返回反正弦值。 Java語言最新實(shí)用教程(第2課)1.5.7數(shù)據(jù)類型轉(zhuǎn)換數(shù)據(jù)類型轉(zhuǎn)換n自動(dòng)類型轉(zhuǎn)換及強(qiáng)制轉(zhuǎn)換自動(dòng)類型轉(zhuǎn)換及強(qiáng)制轉(zhuǎn)換n按精度從按精度從“低低”到到“高高”排列:排列:nbyte short char int long float double 低低高,系統(tǒng)自動(dòng)完成數(shù)據(jù)類型的轉(zhuǎn)換:高,系統(tǒng)自動(dòng)完成數(shù)據(jù)類型的轉(zhuǎn)換:n float x=100; n高高低,必須

4、使用顯示類型轉(zhuǎn)換運(yùn)算低,必須使用顯示類型轉(zhuǎn)換運(yùn)算n int x=(int)34.89; nbyte a=(byte)128; 強(qiáng)制轉(zhuǎn)換運(yùn)算可能導(dǎo)致精度的損失強(qiáng)制轉(zhuǎn)換運(yùn)算可能導(dǎo)致精度的損失 boolean與其他數(shù)據(jù)類型不可以互相轉(zhuǎn)換與其他數(shù)據(jù)類型不可以互相轉(zhuǎn)換Java語言最新實(shí)用教程(第2課)其他轉(zhuǎn)換其他轉(zhuǎn)換n數(shù)字變成字符串?dāng)?shù)字變成字符串qDouble.toString(double d)qInteger.toString(int i)qLong Float Short Byten數(shù)字類型轉(zhuǎn)變?yōu)楦鞣N常用進(jìn)制的字符串?dāng)?shù)字類型轉(zhuǎn)變?yōu)楦鞣N常用進(jìn)制的字符串qtoBinaryString(long or

5、int)qtoOctalString(long or int)qtoHexString(long or int)n字符串轉(zhuǎn)為數(shù)字字符串轉(zhuǎn)為數(shù)字qInteger.parseInt(String s)qFloat.parseFloat(String s)qByte Short Long DoubleJava語言最新實(shí)用教程(第2課)1.6 字符串和日期在Java語言中,提供了一個(gè)專門用來操作字符串的類java.lang.String,在本節(jié)將學(xué)習(xí)該類的使用方法。Java語言最新實(shí)用教程(第2課)創(chuàng)建字符串對(duì)象 聲明并初始化字符串的常用語法如下:String 字符串變量 = 字符串;String a

6、Str = null;/ 初始化為空值String bStr = “”;/ 初始化為空字符串String cStr = “MWQ”;/ 初始化為“MWQ”String cStr =new String(“BMW”);/ 初始化為”BMW”String dStr =new String(“”); / 初始化為空字符串Char aChr =h,a,p,p,y;String aStr=new String(aChr);String bStr=new String(aChr,1,3);/提取aChr中從第一個(gè)位置開始,三個(gè)字符,組成新的字符串Java語言最新實(shí)用教程(第2課)連接字符串連接字符串可以通

7、過運(yùn)算符“+”實(shí)現(xiàn),將多個(gè)字符串合并到一起生成一個(gè)新的字符串。對(duì)于“+”運(yùn)算符,如果有一個(gè)操作元為String類型,則為字符串連接運(yùn)算符,將生成新的字符串。String love = “耐心”+“真心”;String aStr = “單價(jià):”+5元;/ “單價(jià):5元”String bStr = “15”+15;/ “1515”Java語言最新實(shí)用教程(第2課)字符串操作在使用字符串時(shí),經(jīng)常需要對(duì)字符串進(jìn)行處理,以滿足一定的要求。常用的字符串操作包括:n比較字符串n獲取字符串的長度n字符串的大小寫轉(zhuǎn)換n查找字符串n截取子字符串n去掉字符串的首尾空格n替換字符串中的字符或子串n分割字符串equal

8、s() 和和equalsIgnoreCase()startsWith() 和和endsWith()compareTo()length()toLowerCase()和和toUpperCase()indexOf(int ch) 和和indexOf(String str)lastIndexOf (int ch) 和和lastIndexOf(String str)indexOf(int ch, int startIndex) lastIndexOf (int ch, int startIndex) indexOf(String str, int startIndex) lastIndexOf(Stri

9、ng str, int startIndex)substring()trim()replace()和和replaceFirst()split()Java語言最新實(shí)用教程(第2課)比較字符串 equals()方法由于字符串是對(duì)象類型,所以不能簡(jiǎn)單地用“=”(雙等號(hào))判斷兩個(gè)字符串是否相等public boolean equals(String str)注意:equals()方法在比較兩個(gè)字符串時(shí)區(qū)分字母大小寫。String tom=new String( we are students);String boy=new String( We are students);String jerry=

10、new String(we are students);System.out.println(tom.equals(boy);System.out.println(tom.equals(jerry);System.out.println(tom=jerry);false true falseJava語言最新實(shí)用教程(第2課)比較字符串equalsIgnoreCase()方法equalsIgnoreCase()方法在比較兩個(gè)字符串時(shí)不區(qū)分大小寫public boolean equalsIgnoreCase(String str)注意: equalsIgnoreCase()方法不區(qū)分字母大小寫。S

11、tring tom=new String( we are students);String boy=new String( We are students);String jerry= new String(we are students);System.out.println(tom.equalsIgnoreCase (boy);System.out.println(tom.equalsIgnoreCase (jerry);System.out.println(tom=jerry);Java語言最新實(shí)用教程(第2課)比較字符串startsWith() 和endsWith()方法這兩方法分別用

12、于判斷字符串是否以指定的字符串開始或結(jié)束,它們的定義如下:參數(shù)prefix和suffix為欲比較的字符串對(duì)象,該方法的返回值為boolean型,public boolean startsWith(String prefix)public boolean endsWith(String suffix)String str = “We are students;boolean bs = str.startsWith(“a”); / 比較結(jié)果bs為falseboolean be = str.endsWith(“ents); / 比較結(jié)果be為truepublic boolean startsWith

13、(String prefix, int toffset)重載方法,索引位置開始是否為指定的字符串Java語言最新實(shí)用教程(第2課)獲取字符串的長度String nameStr = MingRiSoft;int i = nameStr.length();/ 獲得字符串的長度為10字符串的大小寫轉(zhuǎn)換String str = AbCDefGh;String lStr = str.toLowerCase(); / 結(jié)果為“abcdefgh”String uStr = str.toUpperCase();/ 結(jié)果為“ABCDEFGH”Java語言最新實(shí)用教程(第2課)查找字符串n indexOf():搜

14、索字符或字符串首次出現(xiàn)的位置。n lastIndexOf():搜索字符或字符串最后一次出現(xiàn)位置如果未搜索到字符串則返回-1。nindexOf(int ch)和 indexOf(String str) q獲取指定字符或字符串在原字符串中第一次出現(xiàn)的索引。nlastIndexOf (int ch)和 lastIndexOf(String str) q獲取指定字符或字符串在原字符串中最后一次出現(xiàn)的索引。 nindexOf(int ch, int startIndex)指定索引位置開始第一次出現(xiàn)的索引nlastIndexOf (int ch, int startIndex)q指定索引位置開始最后一次出

15、現(xiàn)的索引nindexOf(String str, int startIndex) nlastIndexOf(String str, int startIndex)Java語言最新實(shí)用教程(第2課)查找字符串例如下面的代碼:String str = mingrikeji;int i = str.indexOf(i);System.out.println(字符i第一次出現(xiàn)在索引: + i); / 索引值是1i = str.lastIndexOf(i);System.out.println(字符i最后一次出現(xiàn)在索引: + i); / 索引值是9i = str.lastIndexOf(ri);Syst

16、em.out.println(字符串ing第一次出現(xiàn)在索引: + i); / 索引值是4i = str.lastIndexOf(ri);System.out.println(字符串ing最后一次出現(xiàn)在索引: + i); / 索引值是4i = str.lastIndexOf(i, 4);System.out.println(從第5個(gè)字符開始,字符i第一次出現(xiàn)在索引: + i);/ 索引值是1Java語言最新實(shí)用教程(第2課)截取子字符串通過String類的substring()方法,可以從現(xiàn)有字符串中截取子字符串,有兩個(gè)重載方法,具體定義如下:方法substring(int beginIndex

17、)用來截取從指定索引位置到最后的子字符串,截取得到的字符串包含指定索引位置的字符。public String substring(int beginIndex)public String substring(int beginIndex, int endIndex)Java語言最新實(shí)用教程(第2課)截取子字符串例如下面的代碼截取字符串“ABCDEF”從索引位置3到最后得到的子串為“DEF”,在子串“DEF”中包含字符串“ABCDEF”中索引為3的字符D:String str = ABCDEF;System.out.println(str.substring(3); / 截取得到的子串為“DEF

18、”Java語言最新實(shí)用教程(第2課)截取子字符串方法substring(int beginIndex, int endIndex)用來截取從起始索引位置beginIndex到終止索引位置endIndex的子字符串,截取得到的字符串包含起始索引位置beginIndex對(duì)應(yīng)的字符,但是不包含終止索引位置endIndex對(duì)應(yīng)的字符。String str = ABCDEF;System.out.println(str.substring(2, 4); / 截取得到的子串為“CD”Java語言最新實(shí)用教程(第2課)去掉字符串的首尾空格通過String類的trim()方法,可以通過去掉字符串的首尾空格得到

19、一個(gè)新的字符串,該方法的具體定義如下:public String trim()String str = ABC ; / 定義一個(gè)字符串,首尾均有空格System.out.println(str.length(); / 輸出字符串的長度為5String str2 = str.trim(); / 去掉字符串的首尾空格System.out.println(str2.length(); / 輸出字符串的長度為3Java語言最新實(shí)用教程(第2課)替換字符串中的字符或子串通過String類的replace()方法,可以將原字符串中的某個(gè)字符替換為指定的字符,并得到一個(gè)新的字符串,該方法的具體定義如下:例如

20、將字符串“NBA_NBA_NBA”中的字符“N”替換為字符“M”,將得到一個(gè)新的字符串“MBA_MBA_MBA”,具體代碼如下:public String replace(char oldChar, char newChar)String str = NBA_NBA_NBA;System.out.println(str.replace(N, M); / 輸出MBA_MBA_MBAJava語言最新實(shí)用教程(第2課)替換字符串中的字符或子串如果想替換掉原字符串中的指定子串,可以通過String類的replaceAll()方法,該方法的具體定義如下:例如將字符串“NBA_NBA_NBA”中的子串“N

21、B”替換為字符串“AA”,將得到一個(gè)新的字符串“AAA_AAA_AAA”,具體代碼如下:public String replaceAll(String regex, String replacement)String str = NBA_NBA_NBA;System.out.println(str.replaceAll(NB, AA);/ 輸出的新字符串為AAA_AAA_AAAJava語言最新實(shí)用教程(第2課)替換字符串中的字符或子串如果只需要替換原字符串中的第一個(gè)子串,可以通過String類的replaceFirst()方法,該方法的具體定義如下:例如將字符串“NBA_NBA_NBA”中的第

22、一個(gè)子串“NB”替換為字符串“AA”,將得到一個(gè)新的字符串“AAA_NBA_NBA”,具體代碼如下:public String replaceFirst(String regex, String replacement)String str = NBA_NBA_NBA;System.out.println(str.replaceFirst(NB, AA);/ 輸出的新字符串為AAA_NBA_NBAJava語言最新實(shí)用教程(第2課)分割字符串在String類中提供了兩個(gè)重載的split()方法,用來將字符串按照指定的規(guī)則進(jìn)行分割,并以String型數(shù)組的方式返回,分割得到的子串在數(shù)組中的順序按照

23、它們?cè)谧址械捻樞蚺帕?。方法的具體定義如下:public String split(String regex, int limit)Java語言最新實(shí)用教程(第2課)分割字符串該方法的第一個(gè)參數(shù)regex為分割規(guī)則,第二個(gè)入口參數(shù)limit用來設(shè)置分割規(guī)則的應(yīng)用次數(shù),所以將影響返回的結(jié)果數(shù)組的長度。如果limit大于0,則分割規(guī)則最多將被應(yīng)用(limit-1)次,數(shù)組的長度也不會(huì)大于limit,并且數(shù)組的最后一項(xiàng)將包含超出最后匹配的所有字符。如果limit為負(fù)數(shù),則分割規(guī)則將被應(yīng)用盡可能多的次數(shù),并且數(shù)組可以是任意長度;需要注意的是,如果limit為0,數(shù)組中位于最后的所有空字符串元素將被丟

24、棄。Java語言最新實(shí)用教程(第2課)分割字符串下面將字符串“boo:and:foo”分別按照不同的規(guī)則和限制進(jìn)行分割:String str = boo:and:foo;String a = str.split(:, 2);String b = str.split(:, 5);String c = str.split(:, -2);String d = str.split(o, 5);String e = str.split(o, -2);String f = str.split(o, 0);String g = str.split(m, 0);Java語言最新實(shí)用教程(第2課)分割字符串上面

25、代碼得到的7個(gè)數(shù)組的相關(guān)信息如下表所示。數(shù) 組分 割 符限 定 數(shù)得到的數(shù)組a:2String a = boo, and:foo ;b:5String b = boo, and, foo ;c:-2String c = boo, and, foo ;do5String d = b, , :and:f, , ;eo-2String e = b, , :and:f, , ;fo0String f = b, , :and:f ;gm0String g = boo:and:foo ;Java語言最新實(shí)用教程(第2課)格式化字符串通過String類的format()方法,可以得到經(jīng)過格式化的字符串對(duì)象,

26、最常用的是對(duì)日期和時(shí)間的格式化。String類中的format()方法有兩種重載形式,它們的具體定義如下:參數(shù)format為要獲取字符串的格式;參數(shù)args為要進(jìn)行格式化的對(duì)象;參數(shù)locale為格式化字符串時(shí)依據(jù)的語言環(huán)境。format(String format, Object obj)方法將依據(jù)本地的語言環(huán)境進(jìn)行格式化。public static String format(String format, Object obj)public static String format(Locale locale, String format, Object obj)Java語言最新實(shí)用教程(

27、第2課)格式化字符串轉(zhuǎn) 換 符功 能 說 明轉(zhuǎn)換符功能說明%s格式化成字符串表示%a格式化成十六進(jìn)制浮點(diǎn)數(shù)%c格式化成字符型表示%e格式化成指數(shù)形式表示%b格式化成邏輯型表示%g格式化成通用浮點(diǎn)數(shù)型數(shù)表示(f和e類型中較短的)%d格式化成十進(jìn)制整型數(shù)表示%h格式化成散列碼形式表示%x格式化成十六進(jìn)制整型數(shù)表示%格式化成百分比形式表示%o格式化成八進(jìn)制整型數(shù)表示%n換行符%f格式化成十進(jìn)制浮點(diǎn)數(shù)型數(shù)表示%tx格式化成日期和時(shí)間形式表示(其中x代表不同的日期與時(shí)間轉(zhuǎn)換符)Java語言最新實(shí)用教程(第2課)格式化字符串下面是三個(gè)獲取格式化字符串的例子,分別為獲得字符A的散列碼、將68格式化為百分比形

28、式和將16.8格式化為指數(shù)形式,代碼如下:String code = String.format(“%h”, A); / 結(jié)果為“41”String percent = String.format(“%d%”, 68); /結(jié)果為“68%”String exponent = String.format(“%e”, 16.8); /結(jié)果為“1.680000e+01”Java語言最新實(shí)用教程(第2課)StringBuffer類類nString類創(chuàng)建的字符串對(duì)象是不可修改的,也就是說,String字符串不能修改、刪除或替換字符串中的某個(gè)字符,即String對(duì)象一旦創(chuàng)建,那么實(shí)體是不可以再發(fā)生變化的.nStringBuffer類能創(chuàng)建可修改的字符串序列,也就是說,該類的對(duì)象的實(shí)體的內(nèi)存空間可以自動(dòng)的改變大小,便于存放一個(gè)可變的字符序列。Java語言最新實(shí)用教程(第2課)Date類類 nDate類在java.util包中。使用Date類的無參數(shù)構(gòu)造方法創(chuàng)建的對(duì)象可以獲取本地當(dāng)前時(shí)間。Date對(duì)象表示時(shí)間的默認(rèn)順序是:星期、月、日、小時(shí)、分、秒、年。例如:Sat Apr 28 21:59:38 CST 2001 。 Java

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論