基礎(chǔ)類和工具類課件_第1頁
基礎(chǔ)類和工具類課件_第2頁
基礎(chǔ)類和工具類課件_第3頁
基礎(chǔ)類和工具類課件_第4頁
基礎(chǔ)類和工具類課件_第5頁
已閱讀5頁,還剩87頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

4.2.2對象初始化-靜態(tài)調(diào)用publicclassObjectCreation{ TestClasstestClass=newTestClass("fieldValue"); staticTestClasstestClass2=newTestClass("staticValue"); static{ testClass2.test(); } publicObjectCreation(){ System.out.println("ObjectCreationinit"); } publicObjectCreation(Stringname){ System.out.println("ObjectCreation"+name+"init"); }

1面向?qū)ο缶幊?.2.2對象初始化-靜態(tài)調(diào)用publicclassOpublicstaticvoidmain(String[]args){ ObjectCreationobjectCreation=newObjectCreation("object1"); ObjectCreationobjectCreation2=newObjectCreation("object2"); }}classTestClass{ publicTestClass(Stringname){ System.out.println("TestClass"+name+"init"); } voidtest(){ System.out.println("makeInner()invoked"); }}2面向?qū)ο缶幊蘰ublicstaticvoidmain(String3面向?qū)ο缶幊?面向?qū)ο缶幊袒A(chǔ)類和工具類4面向?qū)ο缶幊袒A(chǔ)類和工具類4面向?qū)ο缶幊讨饕獌?nèi)容

Java類庫語言基礎(chǔ)類向量類工具類5面向?qū)ο缶幊讨饕獌?nèi)容Java類庫5面向?qū)ο缶幊蘆ava類庫Java的類庫是系統(tǒng)提供的已實現(xiàn)的標準類的集合,是Java編程的API(ApplicationProgramInterface),它可以幫助開發(fā)者方便、快捷地開發(fā)Java程序。這些系統(tǒng)定義好的類根據(jù)實現(xiàn)的功能不同,可以劃分成不同的集合,每個集合是一個包,合稱為類庫。Java的類庫大部分是由它的發(fā)明者——SUN公司提供的,這些類庫稱為基礎(chǔ)類庫(JFC)。API應(yīng)用程序編程接口面向過程語言–函數(shù)庫(子程序包)面向?qū)ο笳Z言–類庫6面向?qū)ο缶幊蘆ava類庫Java的類庫是系統(tǒng)提供的已實現(xiàn)的標準類的集合,Java類庫類庫的結(jié)構(gòu)java.lang語言基礎(chǔ)類庫(System、Math、Thread、基本數(shù)據(jù)類型類)java.utilJava的工具類庫(向量、棧、日期)java.ioJava的標準輸入輸出類庫java.applet用于實現(xiàn)JavaApplet小程序的類庫java.awt用于構(gòu)建圖形用戶界面的類庫java.awt.event界面用戶交互控制和事件響應(yīng)類庫Java的用于實現(xiàn)網(wǎng)絡(luò)功能的類庫使用JDKDocument查看類庫7面向?qū)ο缶幊蘆ava類庫類庫的結(jié)構(gòu)7面向?qū)ο缶幊陶Z言基礎(chǔ)類庫-Object類Java程序中所有類的直接或間接父類,也是類庫中所有類的的父類,所有的其他類都是從Object類派生。構(gòu)造方法:Object()一般方法:Objectclone()生成當前對象的一個拷貝。booleanequals(Objectobj)比較兩個對象是否相同。ClassgetClass()獲取當前對象所屬的類信息。StringtoString()用來返回當前對象本身的有關(guān)信息。8面向?qū)ο缶幊陶Z言基礎(chǔ)類庫-Object類Java程序中所有類的直接或間接publicclassBasicObjectDemo{ publicstaticvoidmain(String[]args){ Aa1=newA(); Aa2=newA(); Aa3=a1; Bb=newB(); System.out.println(a1.equals(a2)); System.out.println(a3.equals(a1)); System.out.println(a1.hashCode()); System.out.println(a1.toString()); }}classA{}classB{}9面向?qū)ο缶幊蘰ublicclassBasicObjectDemo{實例publicclassPhoneNumber{ privateStringregion; privateStringnumber; publicStringtoString(){ return"book.ch6.PhoneNumber{"+ "region='"+region+"'"+ ",number='"+number+"'"+ "}"; }}10面向?qū)ο缶幊虒嵗齪ublicclassPhoneNumber{10System類屬性publicstaticInputStreaminpublicstaticPrintStreamoutpublicstaticPrintStreamerr獲取系統(tǒng)信息、完成系統(tǒng)操作的方法publicstaticlongcurrentTimeMillis();獲取自1970年1月1日零時至當前系統(tǒng)時刻的微秒數(shù)972370687290publicstaticvoidexit(intstatus);強制Java虛擬機退出運行狀態(tài),并把狀態(tài)信息status返回給運行虛擬機的操作系統(tǒng)。System.exit(0);publicstaticvoidgc();強制調(diào)用Java虛擬機的垃圾回收功能。11面向?qū)ο缶幊蘏ystem類屬性11面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:System類System是一個功能強大的類,它提供了標準輸入輸出、運行時的系統(tǒng)信息等工具系統(tǒng)功能類獲取系統(tǒng)標準輸入/輸出System.in,System.out,System.err獲取系統(tǒng)信息System.currentTimeMillis()執(zhí)行系統(tǒng)操作System.exit(0);System.gc();12面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:System類System是一個功能語言基礎(chǔ)類庫:數(shù)據(jù)類型類基本數(shù)據(jù)類型vs.數(shù)據(jù)類型類booleanvsBoolean,charvsCharacter等數(shù)據(jù)類型類規(guī)定了數(shù)據(jù)類型的最大值、最小值構(gòu)造函數(shù):如newInteger(10);完成不同數(shù)據(jù)類型間轉(zhuǎn)換,注意不同的數(shù)據(jù)類使用的方法會有不同。 Double.toString(0.08)、Integer.parseInt(“123”)、Double.ValueOf(“0.08”).intValue()等,見JDKDoc13面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:數(shù)據(jù)類型類基本數(shù)據(jù)類型vs.數(shù)據(jù)類型類13語言基礎(chǔ)類庫:Math類Math類用來完成常用的數(shù)學運算數(shù)學常量:E,PI數(shù)學運算Math.abs(-8.09);Math.exp(5.7);Math.random();Math.sqrt(9.08);Math.pow(2,3);//乘方Math.round(99.6);均為static,使用時無需創(chuàng)建實例Math.method(variable);14面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:Math類Math類用來完成常用的數(shù)學運算14數(shù)學運算的Math類屬性publicfinalstaticdoubleE; //數(shù)學常量epublicfinalstaticdoublePI; //圓周率常量方法(均為靜態(tài)方法)

publicstaticintabs(inti); publicstaticdoublesin(doublea); publicstaticdoublelog(doublea); publicstaticdoublemax(doublea,doubleb); publicstaticdoublepow(doublea,doubleb); publicstaticdoublerandom();//產(chǎn)生0~1之間偽隨機數(shù)15面向?qū)ο缶幊虜?shù)學運算的Math類屬性15面向?qū)ο缶幊虜?shù)學運算的Math類publicstaticdoubleexp(doublea);publicstaticintround(floata);publicstaticdoublesqrt(doublea);例:System.out.println(Math.E);2.718281828..System.out.println(Math.PI);3.14159265…System.out.println(Math.pow(2,3));8.0System.out.println(Math.round(99.6));100System.out.println(Math.abs(-8.09));8.0916面向?qū)ο缶幊虜?shù)學運算的Math類publicstaticdoublepublicclassStringDemo{ publicstaticvoidmain(String[]args){ Strings; s="Stringtest"; s=newString("Stringtest"); intstringLength=s.length(); System.out.println("stringLength="+stringLength); booleanstartTest=s.startsWith("Str"); booleanendTest=s.endsWith("est"); System.out.println("startTest="+startTest); System.out.println("endTest="+endTest); intblankIndex=s.indexOf(''); System.out.println("blankIndex="+blankIndex);字符串相關(guān)類String17面向?qū)ο缶幊蘰ublicclassStringDemo{字符串相關(guān)intsubStringIndex=s.indexOf("est"); System.out.println("subStringIndex="+subStringIndex); intlastIndex=s.lastIndexOf('s'); System.out.println("lastIndex="+lastIndex); Strings2="Stringtest2"; intcompare=pareTo(s); System.out.println("compare="+compare); booleanequalTest=s2.equals(s); System.out.println("equalTest="+equalTest); charsingleChar=s.charAt(3); System.out.println("singleChar="+singleChar);18面向?qū)ο缶幊蘨ntsubStringIndex=s.indexOfStringsubString=s.substring(3); System.out.println("subString="+subString); StringtrimString=s.trim(); System.out.println("trimString='"+trimString+"'"); StringupperCase=s.toUpperCase(); System.out.println("upperCase="+upperCase); StringlowerCase=s.toLowerCase(); System.out.println("lowerCase="+lowerCase); }19面向?qū)ο缶幊蘏tringsubString=s.substring字符串相關(guān)類StringBufferpublicclassStringBufferDemo{ publicstaticvoidmain(String[]args){ StringBufferbuffer=newStringBuffer(); buffer.append('S'); buffer.append("tringBuffer"); System.out.println(buffer.charAt(1)); System.out.println(buffer.capacity()); System.out.println(buffer.indexOf("tring")); System.out.println("buffer="+buffer.toString()); }}揭秘StringBuffer的capacity.mht20面向?qū)ο缶幊套址嚓P(guān)類StringBufferpublicclass6.3集合Collection-Set:不允許重復元素存在;無保存順序-List:允許重復元素存在,保存順序-Iterator接口:可以用來遍歷集合所有數(shù)據(jù)-Map接口:表示關(guān)鍵字-值的集合21面向?qū)ο缶幊?.3集合Collection21面向?qū)ο缶幊?.3集合-SetpublicclassSetDemo{ publicstaticvoidmain(String[]args){ Setset=newHashSet(); set.add("1"); set.add("2"); set.add("3"); set.add("4"); set.add(newInteger(1)); set.add(newDouble(7.0)); set.add("3"); System.out.println("set="+set); }}22面向?qū)ο缶幊?.3集合-SetpublicclassSetDemo6.3集合-ListpublicclassListDemo{ publicstaticvoidmain(String[]args){ Listlist=newArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); list.add(newDouble(7.0)); list.add("4"); System.out.println("list="+list); }}23面向?qū)ο缶幊?.3集合-ListpublicclassListDIterator接口publicclassIteratorDemo{ publicstaticvoidmain(String[]args){ Setset=newHashSet(); set.add("1"); set.add("2"); set.add("3"); set.add("4"); set.add(newInteger(1)); set.add(newDouble(7.0)); Iteratoriterator=set.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); iterator.remove(); } System.out.println("set="+set); }}24面向?qū)ο缶幊蘄terator接口publicclassIteratoListIterator接口publicclassListIteratorDemo{ publicstaticvoidmain(String[]args){ Listlist=newArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); ListIteratoriterator=list.listIterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } while(iterator.hasPrevious()){ System.out.println(iterator.previous()); } }}25面向?qū)ο缶幊蘈istIterator接口publicclassLisMap接口Map接口:表示關(guān)鍵字-值的集合26面向?qū)ο缶幊蘉ap接口Map接口:表示關(guān)鍵字-值的集合26面向?qū)ο缶幊蘉ap接口publicclassMapDemo{ publicstaticvoidmain(String[]args){ Mapmap=newHashMap(); map.put("1","value1"); map.put("2","value2"); map.put("3","value3"); map.put("4","value4"); System.out.println(map.get("1"));

27面向?qū)ο缶幊蘉ap接口publicclassMapDemo{27面SetkeySet=map.keySet(); for(Iteratoriterator=keySet.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } Collectionvalues=map.values(); for(Iteratoriterator=values.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } SetentrySet=map.entrySet(); for(Iteratoriterator=entrySet.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } }}28面向?qū)ο缶幊蘏etkeySet=map.keySet();28面向運行結(jié)果29面向?qū)ο缶幊踢\行結(jié)果29面向?qū)ο缶幊滔蛄款?Vectorjava.util.VectorVector是一組對象的集合,Vector可以追加對象元素的數(shù)量,方便地修改和維護序列中的對象。適合于如下的情況需要處理的對象數(shù)目不定序列中元素都是對象,而不是基本數(shù)據(jù)類型的量需要做頻繁的元素插入和刪除需要定位序列中的對象或其他查找操作0123

對象對象對象對象30面向?qū)ο缶幊滔蛄款?Vectorjava.util.Vector對象對創(chuàng)建向量類對象創(chuàng)建向量類的對象VectormyVector=newVector();創(chuàng)建空的向量對象(初始容量為10)優(yōu)化存儲管理VectormyVector=newVector(100);創(chuàng)建空的向量對象(初始容量為100)VectormyVector=newVector(100,50);創(chuàng)建空的向量對象(初始容量為100,增量為50)31面向?qū)ο缶幊虅?chuàng)建向量類對象創(chuàng)建向量類的對象31面向?qū)ο缶幊滔蛄吭夭僮髯芳釉豠ddElement(Objectobj)插入元素insertElement(Objectobj,intindex)修改向量中的元素setElementAt(Objectobj,intindex)刪除向量中的指定元素removeElementAt(intindex)BooleanremoveElement(Objectobj)removeAllElements()32面向?qū)ο缶幊滔蛄吭夭僮髯芳釉?2面向?qū)ο缶幊滔蛄吭夭僮魅〕鱿蛄恐械闹付ㄔ豋bjectget(intindex)測試對象在向量中是否存在booleancontains(Objectobj)查找指定元素的位置intindexOf(Objectobj)intindexOf(Objectobj,intstart_index)33面向?qū)ο缶幊滔蛄吭夭僮魅〕鱿蛄恐械闹付ㄔ?3面向?qū)ο缶幊滔蛄吭夭僮鞣祷刂付ㄎ恢玫脑豋bjectelementAt(intindex)由于返回的是Object類型的對象,在使用前要進行強制類型轉(zhuǎn)換,將返回的對象引用轉(zhuǎn)換成Object類的某個具體子類的對象。Stringstr=(String)MyVector.elementAt(0);返回一個包含向量中所有元素的對象數(shù)組Object[]toArray()34面向?qū)ο缶幊滔蛄吭夭僮鞣祷刂付ㄎ恢玫脑?4面向?qū)ο缶幊太@取向量信息清空向量(刪除所有元素)clear()測試向量是否為空booleanisEmpty()當前向量元素數(shù)量intsize()向量當前容量intcapacity()35面向?qū)ο缶幊太@取向量信息清空向量(刪除所有元素)35面向?qū)ο缶幊汤篊atsAndDogs.java

publicclassCatsAndDogs{publicstaticvoidmain(String[]args){ Vectorcats=newVector(); for(inti=0;i<7;i++) cats.addElement(newCat(i)); //Notaproblemtoaddadogtocats: cats.addElement(newDog(7)); for(inti=0;i<cats.size();i++) ((Cat)cats.elementAt(i)).print();//Dogisdetectedonlyatrun-time//改為:if(cats.elementAt(i)instanceofCat){…}}}///:~缺點:Object的類型不確定;對象的類型不匹配只能在運行期才能被檢測出來36面向?qū)ο缶幊汤篊atsAndDogs.java缺點:Object的類工具類庫:日期Calendar(表示日期和時間)getInstance():得到表示當前時間的實例get(int):獲取相應(yīng)信息,如get(Calendar.YEAR)set(int,int):如set(Calendar.YEAR,1999)set(year,month,date……):set用來設(shè)置信息Calendar.getTime():得到當前時間的Date對象GregorianCalendar有不同的構(gòu)造方法,用來創(chuàng)建實例。如:GregorianCalender(year,month,date,…)37面向?qū)ο缶幊坦ぞ哳悗欤喝掌贑alendar(表示日期和時間)37面向?qū)ο笕掌陬悺狣ate構(gòu)造方法Date()初始化時間對象方法longgetTime()獲取自1970.1.1零時至當前系統(tǒng)時刻的微秒數(shù)其他若干方法intgetDate()獲取系統(tǒng)當前日期38面向?qū)ο缶幊倘掌陬悺狣ate構(gòu)造方法38面向?qū)ο缶幊倘掌陬悺狢alendar抽象類,在Date對象和一組整數(shù)域之間進行轉(zhuǎn)換:YEAR,MONTH,DAY,HOUR,…Calendarc=Calendar.getInstance();intc.get(Calendar.YEAR)intc.get(Calendar.MONTH)(1月為0)intc.get(Calendar.DATE)intc.get(Calendar.HOUR)intc.get(Calendar.MINUTE)intc.get(Calendar.SECOND)Datec.getTime()39面向?qū)ο缶幊倘掌陬悺狢alendar抽象類,在Date對象和一組整數(shù)域之日期類—Calendarc.set(Calendar.YEAR,2000)c.set(Calendar.MONTH,10)(11月)c.set(Calendar.DATE,7)c.set(2000,10,7)c.set(2000,10,7,17,48,20)40面向?qū)ο缶幊倘掌陬悺狢alendarc.set(Calendar.YEA例題-銀行帳戶

bankAccountm_accNumm_balancem_transRecordgetBalance()saveMoney(..)

Transactionm_datem_amountm_typem_remaingetDays()transMeg()41面向?qū)ο缶幊汤}-銀行帳戶bankAccountTransact工具類庫:棧java.util.Stack(常用的線性數(shù)據(jù)結(jié)構(gòu))棧底:固定的一端棧頂:數(shù)據(jù)元素進出的一端遵循:“后進先出”原則常用的堆棧操作創(chuàng)建堆棧:Stack()壓棧操作:push(Object)彈棧操作:pop()42面向?qū)ο缶幊坦ぞ哳悗欤簵ava.util.Stack(常用的線性數(shù)據(jù)結(jié)堆棧Stack是Vector的子類構(gòu)造方法Stack()建立一個新的棧方法booleanempty()測試棧是否空Objectpeek()查看棧頂元素Objectpop()彈棧(出棧)Objectpush(Objectitem)壓棧(進棧)intsearch(Objectitem)查找棧中元素,返回距棧頂位置(棧頂位置為1)棧底棧頂彈棧壓棧43面向?qū)ο缶幊潭褩tack是Vector的子類棧底棧頂彈棧壓棧43面向?qū)Χ褩@?表達式計算#2*(3+5

8

16-4

122*(3+)5-4##操作數(shù)棧s1操作符棧s244面向?qū)ο缶幊潭褩@?表達式計算#2*(3+5816-4堆棧例-表達式計算=<<<<<#>>>>>>)=<<<<<(>><>>>>/>><>>>>*>><<<>>->><<<>>+#)(/*-+表達式棧頂棧頂運算符表達式當前運算符45面向?qū)ο缶幊潭褩@?表達式計算=<<<<<#>>>>>>)=<<<<<(課后作業(yè)P144.第4、6、8、10題46面向?qū)ο缶幊陶n后作業(yè)P144.46面向?qū)ο缶幊?.2.2對象初始化-靜態(tài)調(diào)用publicclassObjectCreation{ TestClasstestClass=newTestClass("fieldValue"); staticTestClasstestClass2=newTestClass("staticValue"); static{ testClass2.test(); } publicObjectCreation(){ System.out.println("ObjectCreationinit"); } publicObjectCreation(Stringname){ System.out.println("ObjectCreation"+name+"init"); }

47面向?qū)ο缶幊?.2.2對象初始化-靜態(tài)調(diào)用publicclassOpublicstaticvoidmain(String[]args){ ObjectCreationobjectCreation=newObjectCreation("object1"); ObjectCreationobjectCreation2=newObjectCreation("object2"); }}classTestClass{ publicTestClass(Stringname){ System.out.println("TestClass"+name+"init"); } voidtest(){ System.out.println("makeInner()invoked"); }}48面向?qū)ο缶幊蘰ublicstaticvoidmain(String49面向?qū)ο缶幊?面向?qū)ο缶幊袒A(chǔ)類和工具類50面向?qū)ο缶幊袒A(chǔ)類和工具類4面向?qū)ο缶幊讨饕獌?nèi)容

Java類庫語言基礎(chǔ)類向量類工具類51面向?qū)ο缶幊讨饕獌?nèi)容Java類庫5面向?qū)ο缶幊蘆ava類庫Java的類庫是系統(tǒng)提供的已實現(xiàn)的標準類的集合,是Java編程的API(ApplicationProgramInterface),它可以幫助開發(fā)者方便、快捷地開發(fā)Java程序。這些系統(tǒng)定義好的類根據(jù)實現(xiàn)的功能不同,可以劃分成不同的集合,每個集合是一個包,合稱為類庫。Java的類庫大部分是由它的發(fā)明者——SUN公司提供的,這些類庫稱為基礎(chǔ)類庫(JFC)。API應(yīng)用程序編程接口面向過程語言–函數(shù)庫(子程序包)面向?qū)ο笳Z言–類庫52面向?qū)ο缶幊蘆ava類庫Java的類庫是系統(tǒng)提供的已實現(xiàn)的標準類的集合,Java類庫類庫的結(jié)構(gòu)java.lang語言基礎(chǔ)類庫(System、Math、Thread、基本數(shù)據(jù)類型類)java.utilJava的工具類庫(向量、棧、日期)java.ioJava的標準輸入輸出類庫java.applet用于實現(xiàn)JavaApplet小程序的類庫java.awt用于構(gòu)建圖形用戶界面的類庫java.awt.event界面用戶交互控制和事件響應(yīng)類庫Java的用于實現(xiàn)網(wǎng)絡(luò)功能的類庫使用JDKDocument查看類庫53面向?qū)ο缶幊蘆ava類庫類庫的結(jié)構(gòu)7面向?qū)ο缶幊陶Z言基礎(chǔ)類庫-Object類Java程序中所有類的直接或間接父類,也是類庫中所有類的的父類,所有的其他類都是從Object類派生。構(gòu)造方法:Object()一般方法:Objectclone()生成當前對象的一個拷貝。booleanequals(Objectobj)比較兩個對象是否相同。ClassgetClass()獲取當前對象所屬的類信息。StringtoString()用來返回當前對象本身的有關(guān)信息。54面向?qū)ο缶幊陶Z言基礎(chǔ)類庫-Object類Java程序中所有類的直接或間接publicclassBasicObjectDemo{ publicstaticvoidmain(String[]args){ Aa1=newA(); Aa2=newA(); Aa3=a1; Bb=newB(); System.out.println(a1.equals(a2)); System.out.println(a3.equals(a1)); System.out.println(a1.hashCode()); System.out.println(a1.toString()); }}classA{}classB{}55面向?qū)ο缶幊蘰ublicclassBasicObjectDemo{實例publicclassPhoneNumber{ privateStringregion; privateStringnumber; publicStringtoString(){ return"book.ch6.PhoneNumber{"+ "region='"+region+"'"+ ",number='"+number+"'"+ "}"; }}56面向?qū)ο缶幊虒嵗齪ublicclassPhoneNumber{10System類屬性publicstaticInputStreaminpublicstaticPrintStreamoutpublicstaticPrintStreamerr獲取系統(tǒng)信息、完成系統(tǒng)操作的方法publicstaticlongcurrentTimeMillis();獲取自1970年1月1日零時至當前系統(tǒng)時刻的微秒數(shù)972370687290publicstaticvoidexit(intstatus);強制Java虛擬機退出運行狀態(tài),并把狀態(tài)信息status返回給運行虛擬機的操作系統(tǒng)。System.exit(0);publicstaticvoidgc();強制調(diào)用Java虛擬機的垃圾回收功能。57面向?qū)ο缶幊蘏ystem類屬性11面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:System類System是一個功能強大的類,它提供了標準輸入輸出、運行時的系統(tǒng)信息等工具系統(tǒng)功能類獲取系統(tǒng)標準輸入/輸出System.in,System.out,System.err獲取系統(tǒng)信息System.currentTimeMillis()執(zhí)行系統(tǒng)操作System.exit(0);System.gc();58面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:System類System是一個功能語言基礎(chǔ)類庫:數(shù)據(jù)類型類基本數(shù)據(jù)類型vs.數(shù)據(jù)類型類booleanvsBoolean,charvsCharacter等數(shù)據(jù)類型類規(guī)定了數(shù)據(jù)類型的最大值、最小值構(gòu)造函數(shù):如newInteger(10);完成不同數(shù)據(jù)類型間轉(zhuǎn)換,注意不同的數(shù)據(jù)類使用的方法會有不同。 Double.toString(0.08)、Integer.parseInt(“123”)、Double.ValueOf(“0.08”).intValue()等,見JDKDoc59面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:數(shù)據(jù)類型類基本數(shù)據(jù)類型vs.數(shù)據(jù)類型類13語言基礎(chǔ)類庫:Math類Math類用來完成常用的數(shù)學運算數(shù)學常量:E,PI數(shù)學運算Math.abs(-8.09);Math.exp(5.7);Math.random();Math.sqrt(9.08);Math.pow(2,3);//乘方Math.round(99.6);均為static,使用時無需創(chuàng)建實例Math.method(variable);60面向?qū)ο缶幊陶Z言基礎(chǔ)類庫:Math類Math類用來完成常用的數(shù)學運算14數(shù)學運算的Math類屬性publicfinalstaticdoubleE; //數(shù)學常量epublicfinalstaticdoublePI; //圓周率常量方法(均為靜態(tài)方法)

publicstaticintabs(inti); publicstaticdoublesin(doublea); publicstaticdoublelog(doublea); publicstaticdoublemax(doublea,doubleb); publicstaticdoublepow(doublea,doubleb); publicstaticdoublerandom();//產(chǎn)生0~1之間偽隨機數(shù)61面向?qū)ο缶幊虜?shù)學運算的Math類屬性15面向?qū)ο缶幊虜?shù)學運算的Math類publicstaticdoubleexp(doublea);publicstaticintround(floata);publicstaticdoublesqrt(doublea);例:System.out.println(Math.E);2.718281828..System.out.println(Math.PI);3.14159265…System.out.println(Math.pow(2,3));8.0System.out.println(Math.round(99.6));100System.out.println(Math.abs(-8.09));8.0962面向?qū)ο缶幊虜?shù)學運算的Math類publicstaticdoublepublicclassStringDemo{ publicstaticvoidmain(String[]args){ Strings; s="Stringtest"; s=newString("Stringtest"); intstringLength=s.length(); System.out.println("stringLength="+stringLength); booleanstartTest=s.startsWith("Str"); booleanendTest=s.endsWith("est"); System.out.println("startTest="+startTest); System.out.println("endTest="+endTest); intblankIndex=s.indexOf(''); System.out.println("blankIndex="+blankIndex);字符串相關(guān)類String63面向?qū)ο缶幊蘰ublicclassStringDemo{字符串相關(guān)intsubStringIndex=s.indexOf("est"); System.out.println("subStringIndex="+subStringIndex); intlastIndex=s.lastIndexOf('s'); System.out.println("lastIndex="+lastIndex); Strings2="Stringtest2"; intcompare=pareTo(s); System.out.println("compare="+compare); booleanequalTest=s2.equals(s); System.out.println("equalTest="+equalTest); charsingleChar=s.charAt(3); System.out.println("singleChar="+singleChar);64面向?qū)ο缶幊蘨ntsubStringIndex=s.indexOfStringsubString=s.substring(3); System.out.println("subString="+subString); StringtrimString=s.trim(); System.out.println("trimString='"+trimString+"'"); StringupperCase=s.toUpperCase(); System.out.println("upperCase="+upperCase); StringlowerCase=s.toLowerCase(); System.out.println("lowerCase="+lowerCase); }65面向?qū)ο缶幊蘏tringsubString=s.substring字符串相關(guān)類StringBufferpublicclassStringBufferDemo{ publicstaticvoidmain(String[]args){ StringBufferbuffer=newStringBuffer(); buffer.append('S'); buffer.append("tringBuffer"); System.out.println(buffer.charAt(1)); System.out.println(buffer.capacity()); System.out.println(buffer.indexOf("tring")); System.out.println("buffer="+buffer.toString()); }}揭秘StringBuffer的capacity.mht66面向?qū)ο缶幊套址嚓P(guān)類StringBufferpublicclass6.3集合Collection-Set:不允許重復元素存在;無保存順序-List:允許重復元素存在,保存順序-Iterator接口:可以用來遍歷集合所有數(shù)據(jù)-Map接口:表示關(guān)鍵字-值的集合67面向?qū)ο缶幊?.3集合Collection21面向?qū)ο缶幊?.3集合-SetpublicclassSetDemo{ publicstaticvoidmain(String[]args){ Setset=newHashSet(); set.add("1"); set.add("2"); set.add("3"); set.add("4"); set.add(newInteger(1)); set.add(newDouble(7.0)); set.add("3"); System.out.println("set="+set); }}68面向?qū)ο缶幊?.3集合-SetpublicclassSetDemo6.3集合-ListpublicclassListDemo{ publicstaticvoidmain(String[]args){ Listlist=newArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); list.add(newDouble(7.0)); list.add("4"); System.out.println("list="+list); }}69面向?qū)ο缶幊?.3集合-ListpublicclassListDIterator接口publicclassIteratorDemo{ publicstaticvoidmain(String[]args){ Setset=newHashSet(); set.add("1"); set.add("2"); set.add("3"); set.add("4"); set.add(newInteger(1)); set.add(newDouble(7.0)); Iteratoriterator=set.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); iterator.remove(); } System.out.println("set="+set); }}70面向?qū)ο缶幊蘄terator接口publicclassIteratoListIterator接口publicclassListIteratorDemo{ publicstaticvoidmain(String[]args){ Listlist=newArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add("4"); list.add("5"); ListIteratoriterator=list.listIterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } while(iterator.hasPrevious()){ System.out.println(iterator.previous()); } }}71面向?qū)ο缶幊蘈istIterator接口publicclassLisMap接口Map接口:表示關(guān)鍵字-值的集合72面向?qū)ο缶幊蘉ap接口Map接口:表示關(guān)鍵字-值的集合26面向?qū)ο缶幊蘉ap接口publicclassMapDemo{ publicstaticvoidmain(String[]args){ Mapmap=newHashMap(); map.put("1","value1"); map.put("2","value2"); map.put("3","value3"); map.put("4","value4"); System.out.println(map.get("1"));

73面向?qū)ο缶幊蘉ap接口publicclassMapDemo{27面SetkeySet=map.keySet(); for(Iteratoriterator=keySet.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } Collectionvalues=map.values(); for(Iteratoriterator=values.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } SetentrySet=map.entrySet(); for(Iteratoriterator=entrySet.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } }}74面向?qū)ο缶幊蘏etkeySet=map.keySet();28面向運行結(jié)果75面向?qū)ο缶幊踢\行結(jié)果29面向?qū)ο缶幊滔蛄款?Vectorjava.util.VectorVector是一組對象的集合,Vector可以追加對象元素的數(shù)量,方便地修改和維護序列中的對象。適合于如下的情況需要處理的對象數(shù)目不定序列中元素都是對象,而不是基本數(shù)據(jù)類型的量需要做頻繁的元素插入和刪除需要定位序列中的對象或其他查找操作0123

對象對象對象對象76面向?qū)ο缶幊滔蛄款?Vectorjava.util.Vector對象對創(chuàng)建向量類對象創(chuàng)建向量類的對象VectormyVector=newVector();創(chuàng)建空的向量對象(初始容量為10)優(yōu)化存儲管理VectormyVector=newVector(100);創(chuàng)建空的向量對象(初始容量為100)VectormyVector=newVector(100,50);創(chuàng)建空的向量對象(初始容量為100,增量為50)77面向?qū)ο缶幊虅?chuàng)建向量類對象創(chuàng)建向量類的對象31面向?qū)ο缶幊滔蛄吭夭僮髯芳釉豠ddElement(Objectobj)插入元素insertElement(Objectobj,intindex)修改向量中的元素setElementAt(Objectobj,intindex)刪除向量中的指定元素removeElementAt(intindex)BooleanremoveElement(Objectobj)removeAllElements()78面向?qū)ο缶幊滔蛄吭夭僮髯芳釉?2面向?qū)ο缶幊滔蛄吭夭僮魅〕鱿蛄恐械闹付ㄔ豋bjectget(intindex)測試對象在向量中是否存在booleancontains(Objectobj)查找指定元素的位置intindexOf(Objectobj)intindexOf(Objectobj,intstart_index)79面向?qū)ο缶幊滔蛄吭夭僮魅〕鱿蛄恐械闹付ㄔ?3面向?qū)ο缶幊滔蛄吭夭僮鞣祷刂付ㄎ恢玫脑豋bjectelementAt(intindex)由于返回的是Object類型的對象,在使用前要進行強制類型轉(zhuǎn)換,將返回的對象引用轉(zhuǎn)換成Object類的某個具體子類的對象。Stringstr=(String)MyVector.elementAt(0);返回一個包含向量中所有元素的對象數(shù)組Object[]toArray()80面向?qū)ο缶幊滔蛄吭夭僮鞣祷刂付ㄎ恢玫脑?4面向?qū)ο缶幊太@取向量信息清空向量(刪除所有元素)clear()測試向量是否為空booleanisEmpty()當前向量元素數(shù)量intsize()向量當前容量intcapacity()81面向?qū)ο缶幊太@取向量信息清空向量(刪除所有元素)35面向?qū)ο缶幊汤篊atsA

溫馨提示

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

評論

0/150

提交評論