![JAVA基礎(chǔ)知識點梳理(精簡)_第1頁](http://file4.renrendoc.com/view/73b0b4daa43958bfa22eb899ff71267f/73b0b4daa43958bfa22eb899ff71267f1.gif)
![JAVA基礎(chǔ)知識點梳理(精簡)_第2頁](http://file4.renrendoc.com/view/73b0b4daa43958bfa22eb899ff71267f/73b0b4daa43958bfa22eb899ff71267f2.gif)
![JAVA基礎(chǔ)知識點梳理(精簡)_第3頁](http://file4.renrendoc.com/view/73b0b4daa43958bfa22eb899ff71267f/73b0b4daa43958bfa22eb899ff71267f3.gif)
![JAVA基礎(chǔ)知識點梳理(精簡)_第4頁](http://file4.renrendoc.com/view/73b0b4daa43958bfa22eb899ff71267f/73b0b4daa43958bfa22eb899ff71267f4.gif)
![JAVA基礎(chǔ)知識點梳理(精簡)_第5頁](http://file4.renrendoc.com/view/73b0b4daa43958bfa22eb899ff71267f/73b0b4daa43958bfa22eb899ff71267f5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精品文檔JAVA基礎(chǔ)知識點梳理(重點筆記)1、標識符規(guī)則可以由字母、數(shù)字、下劃線、美元符$組成,不能以數(shù)字開頭不能是 java 的關(guān)鍵字和保留字嚴格區(qū)分大小寫,且盡量見名知意2、變量public class testpublic static void main(String args)String love=imooc;System.out.println( 變量 love 的內(nèi)容是: +love);love=i love imooc;System.out.println( 重新賦值后變量 love 的內(nèi)容是 +love); 3、變量命名習(xí)慣:a)第一個單詞的首字母小寫,其后單詞的首字母大寫
2、(駱駝式),myAgeb)變量命名時,盡量簡短且能清楚的表達變量的作用,見名知意,如stuNamePs: java變量長度沒有限制,但是嚴格區(qū)分大小寫4、數(shù)據(jù)類型int : 4 個字節(jié)Double:8 個字節(jié)c)Float: 4 個字節(jié)float 變量賦值在數(shù)值后添加字母f float he=12.2f;d)Char: 2 個字節(jié)char 變量賦值使用單引號 e)Boolean: 1 個字節(jié)取值只能為: true 和 falseString :引用數(shù)據(jù)類型5、Java常量的應(yīng)用:Final 數(shù)據(jù)類型 常量名 =值;常量名一般使用大寫字符6、邏輯運算符:a):異或有且只有一個為true則返回 t
3、rue7、條件運算符:a)() ?正確表達式: 錯誤表達式.精品文檔Eg: String str=(85)? “yes”: “no”8、運算符優(yōu)先級最高的是:()9、輸出換行: System.out.println();10、循環(huán)語句練習(xí)packagettt;publicclasstest6 publicstaticvoidmain (String args)inti=1;intsum1=0;for (;i9;i+)bb=bb/10;System.out .println(i的值為 +i);、數(shù)組聲明數(shù)組:數(shù)組類型 數(shù)組名;ii.數(shù)組類型數(shù)組名 ;分配空間:i.數(shù)組名 =new 數(shù)據(jù)類型【數(shù)組
4、長度】.精品文檔Eg: socres = new int5;合并: int socres=new int5;int sorces=1,2,2,3;等價于 : int sorces=new int1,2,2,3;d)數(shù)組名 .length獲取數(shù)組的長度arrays 類操作 java 中的數(shù)組1、排序: arrays.sort(數(shù)組名 )(升序 )2、將數(shù)組轉(zhuǎn)換為字符串:arrays.toString(數(shù)組名 ) ;(可以實現(xiàn)把多個數(shù)組元素連接在一起,元素中間用逗號和空格隔開)。foreach 形式的 for 語句使用: for ( int i : words)System. out .print
5、(i);15 、 java中無參無返方法的調(diào)用a)定義: public void show()方法名字第一個詞小寫,之后首字母大寫調(diào)用:創(chuàng)建類的對象對象名 . 方法名();16 、 java中無參有返方法的調(diào)用a)Public int show()return sum;注意:i.如果方法的返回類型為void ,則方法中不能使用return返回值方法的返回值最多只能有一個,不能返回多個值方法返回值的類型必須兼容、方法的重載:必須是在同一個類中方法名相同方法參數(shù)的個數(shù)、順序或類型不同與方法的修飾符或返回值沒有關(guān)系18 、隨機數(shù)方法:(int)( Math.random()*100)不需要導(dǎo)包、類和
6、對象:類是模子,確定對象將會擁有的特征(屬性)和行為(方法)類是對象的模型,具有 相同屬性和方法 的一組對象的集合對象:屬性對象具有的各種特征每個對象的每個屬性都有特定值類是抽象概念,僅僅是模板,比如“手機”;對象是一個具體的實體e)所有的 java程序都是以類class為組織單元,由屬性和方法組成Java 對象使用步驟:i.類名 對象名 =new 類名();ii.Phone phone=new Phone();iii.引用屬性: phone.screen=5;/給 screen屬性賦值5iv.引用方法:phone.send();/調(diào)用 send ()方法、成員變量和局部變量的區(qū)別.精品文檔作
7、用域不同初始值不同在同一個方法中,不允許有同名局部變量兩類變量同名時,局部變量具有更高的優(yōu)先級、構(gòu)造方法:a)使用 new+ 構(gòu)造方法創(chuàng)建一個新的對象構(gòu)造方法是定義在 java 類中的一個用來初始化對象的方法構(gòu)造方法與類同名且沒有返回值v.構(gòu)造方法的格式:public構(gòu)造方法名()/初始化代碼vi.Phone phone=new Phone();vii.構(gòu)造方法的名字與類名相同當(dāng)沒有指定構(gòu)造方法是,系統(tǒng)會自動添加無參的構(gòu)造方法當(dāng)有指定構(gòu)造方法,無論是有參、無參的構(gòu)造方法,都不會自動添加無參的構(gòu)造方法構(gòu)造方法的重載:方法名相同,但參數(shù)不同的多個方法,系統(tǒng)自動選擇22 、靜態(tài)變量static:a)
8、Static可以修飾變量、方法、代碼塊訪問(引用): 類名 . 變量名hello.hahac)定義: public static String haha=”imoc ”;Public :表示公開的、公有的、靜態(tài)方法:訪問:類名 . 方法名();靜態(tài)方法中可以直接調(diào)用同類中的靜態(tài)成員,但不能直接調(diào)用非靜態(tài)成員。如果調(diào)用非靜態(tài)成員,可以通過對象來訪問在普通的方法中可以直接訪問同類的非靜態(tài)變量和靜態(tài)變量靜態(tài)方法中不能直接調(diào)用非靜態(tài)方法,需要通過對象來訪問非靜態(tài)方法。、程序運行時靜態(tài)初始化塊最先被執(zhí)行,然后執(zhí)行普通初始化塊,最后才執(zhí)行構(gòu)造方法。、面向?qū)ο蟮娜筇匦裕悍庋b、繼承、多態(tài)、封裝:概念:將類的
9、某些信息隱藏在類內(nèi)部,不允許外部程序直接訪問,而是通過該類提供的方法來實現(xiàn)對隱藏信息的操作和訪問好處:只能通過規(guī)定的方法訪問數(shù)據(jù);隱藏類的實例細節(jié),方便修改和實現(xiàn)實現(xiàn)步驟:i.修改屬性的可見性:設(shè)為private:private int a;ii.創(chuàng)建 getter/setter方法:用于屬性的讀寫iii.在 getter、 setter方法中加入屬性的控制語句:對屬性的合法性進行判斷( 其實就是通過調(diào)用方法去讀寫屬性)v. 可以通過 eclipse 中 source 菜單中 select getters and setters to create 27 、 java 中的包:作用:管理 ja
10、va 文件;解決同名文件沖突定義包: package 包名必須放在 java 源程序的第一行包名間可以使用“ . ”隔開iii.Eg:com.imooc.myclass;系統(tǒng)包:.精品文檔Java.lang.(類):包含java語言基礎(chǔ)的類Java.util.(類):包含java語言中各種工具類Java.io.(類):只包含輸入、輸出相關(guān)功能的表包的使用:可以通過 import 關(guān)鍵字,在某個文件使用其他文件中的類。Import com.imooc.music.myclassIi. Java中,包的命名規(guī)范是全小寫字母拼音Iii. 使用的時候不但可以加載某個包下的所有文件,也可以加載某個具體子
11、包下的所有文件訪問修飾符的總結(jié)訪問修飾符本類同包子類其他private默認protectedpublic28 、 this關(guān)鍵字:代表當(dāng)前對象This. 屬性 操作當(dāng)前對象的屬性This. 方法 調(diào)用當(dāng)前對象的方法封裝對象的屬性的時候經(jīng)常會使用this 關(guān)鍵字29 、 java中的內(nèi)部類:(包含內(nèi)部類的類稱為外部類)內(nèi)部類提供了更好的封裝,可以把內(nèi)部類隱藏在外部類之內(nèi),不允許同一個包中的其他類訪問該類內(nèi)部類的方法可以直接訪問外部類的所有數(shù)據(jù),包括隱私的數(shù)據(jù)內(nèi)部類所實現(xiàn)的功能使用外部類同樣可以實現(xiàn),只是有時使用內(nèi)部類更方便內(nèi)部類可以分為: i. 成員內(nèi)部類1. 內(nèi)部類中定義的方法可以直接訪問外部
12、類中的數(shù)據(jù),不受訪問控制符的影響2.定義一個內(nèi)部類對象:內(nèi)部類對象名 = 外部類對象 .new內(nèi)部類()3.外部類不能直接使用內(nèi)部類的成員和方法,可以先創(chuàng)建內(nèi)部類的對象,然后通過內(nèi)部類的對象來訪問其他成員變量和方法外部類和內(nèi)部類具有相同的成員變量或方法,則內(nèi)部類默認訪問自己的成員變量或方法,如果要訪問外部類的成員變量,可以使用this關(guān)鍵字ii.靜態(tài)內(nèi)部類1.靜態(tài)內(nèi)部類不能直接訪問外部類的非靜態(tài)成員,但可以通過new 外部類().成員的方式訪問如果外部類的靜態(tài)成員與內(nèi)部類的成員名稱相同, 可以通過 “類名 . 靜態(tài)成員”訪問外部類的靜態(tài)成員;如果外部類的靜態(tài)成員與內(nèi)部類的成員名稱不同,則可以通
13、過“成員名”直接調(diào)用外部類的靜態(tài)成員創(chuàng)建靜態(tài)內(nèi)部類的對象時, 不需要外部類的對象, 可以直接創(chuàng)建 內(nèi)部類 對象名 =new 內(nèi)部類() ;方法內(nèi)部類.精品文檔1.方法內(nèi)部類就是定義在外部類的方法中, 方法內(nèi)部類只在該方法的內(nèi)部可見,即只在該方法內(nèi)可以使用。由于方法內(nèi)部類不能在外部類的方法以外的地方使用,因此方法內(nèi)部類不能使用訪問控制符和 static 修飾符匿名內(nèi)部類、繼承:Java 里都是單繼承好處:i.子類直接擁有父類的所有屬性和方法,但private除外實現(xiàn)代碼的復(fù)用iii.Class子類 extends父類Final 關(guān)鍵字修飾類:則該類不允許被繼承修飾方法:則該方法不允許被覆蓋(重寫
14、)修飾屬性: 則該類的屬性不會進行隱式的初始化 (類的初始化屬性必須有值)或在構(gòu)造方法中賦值修飾變量,則變量的值只能賦一次,即常量Super 關(guān)鍵字在對象的內(nèi)部使用,可以代表父類對象ii.方位父類的屬性,或方法,super.agesuper.eat().精品文檔31 、 Object類:a)Object類是所有類的父類,如果一個類沒有使用extends關(guān)鍵字明確標識繼承另一個類,那么這個類默認繼承object類b)Object類中的方法,適合所有子類c)方法:i.toString()方法:1.在 object類里面定義的tostring()方法的時候返回的對象的哈希碼(對象地址字符串)(用來區(qū)
15、分對象)如:直接輸出 dog 對象的值: System.out.println(dog);3.生成: source菜單欄 generate toString() 生成輸出屬性的方法ii. Equals() 方法:1.比較的是對象的 引用 是否指向同一塊內(nèi)存地址:Dog dog=new Dog();生成: source 菜單欄 generate hashcode()and equals().類對象:姓名、年齡、身高.obj.getclass()類的對象:小灰、 25 、170.obj3.調(diào)用: if(dog1.equals(dog2) 判斷兩個對象是否相同、多態(tài):(繼承是多態(tài)的基礎(chǔ))引用多態(tài):i
16、.父類的引用可以指向本類的對象:animals obj1=new animals();ii.父類的引用可以指向子類的對象: animals obj2=new dog();注意:子類的引用 不可以 指向父類的對象 :dog obj3=new animals();方法多態(tài):創(chuàng)建本類對象時,調(diào)用的方法為本類方法ii.創(chuàng)建子類對象時,調(diào)用的方法為子類重寫 的方法或者 繼承 的方法、多態(tài)中的引用類型轉(zhuǎn)換向上類型轉(zhuǎn)換(隱式 / 自動類型轉(zhuǎn)換),是小類型到大類型的轉(zhuǎn)換,無風(fēng)險向下類型轉(zhuǎn)行(強制類型轉(zhuǎn)換),是大類型到小類型的轉(zhuǎn)換,有風(fēng)險,溢出c)Instanceof運算符,來解決引用對象時的類型,避免類型轉(zhuǎn)換
17、的安全問題Eg:Dog dog=new Dog();Animal anmal=dog;/自動類型提升,向上類型轉(zhuǎn)換Dog dog2=(Dog)animal;/強制類型轉(zhuǎn)換,向下類型轉(zhuǎn)換Cat cat=(Cat)animal;/編譯時 Cat 類型;運行時Dog 類型,報錯可以替換為:if (animal instanceof Cat)Cat cat=(Cat)animal;、抽象類:語法:抽象類前使用 abstract關(guān)鍵字修飾,則該類為抽象類作用:限制規(guī)定子類必須實現(xiàn)某些方法,但不關(guān)注實現(xiàn)細節(jié)規(guī)則:.精品文檔i.Abstract定義抽象類ii.Abstract定義抽象方法,只有聲明,不需要實
18、現(xiàn)包含抽象方法的類是抽象類抽象類中可以包含普通的方法,也可以沒有抽象方法抽象類不能直接創(chuàng)建,可以定義引用變量現(xiàn)有 Shape 圖形類,用 Rectangle 矩形和 Circle 圓形子類,求圖形的周長和面積:Shape.java:package com.amooc;publicabstractclass Shapepublicabstractvoidzhouchang(doublel,doublew);publicabstractvoidmianji(doublel,doublew);publicabstractvoidzhouchang2(doubler);publicabstractvo
19、idmianji2(doubler);Rectangle.java:packagecom.amooc;publicclassRectangleextendsShape publicvoidzhouchang(doublel,doublew)doublez;z=2*(l+w);System.out .println( 長為: +l+ ,寬為: +w+ ,的長方形周長是: +z);publicvoidmianji(doublel,doublew)doublem;m=l*w;System.out .println( 長為: +l+ ,寬為: +w+ ,的長方形面積是: +m);publicvoidz
20、houchang2(doubler)doublez;z=2*3.14*r;System.out .println( 半徑為: +r+ ,的圓形周長是: +z);publicvoidmianji2(doubler)doublem;m=3.14*r*r;System.out .println( 半徑為: +r+ ,的圓形面積是: +m);imooc1.java:packagecom.amooc;.精品文檔publicclassimooc1publicstaticvoidmain(String args)Rectangle z1=new Rectangle();Shape m1= new Recta
21、ngle();Shape z2=new Rectangle();Shape m2= new Rectangle();z1.zhouchang(3,4);m1.mianji(3,4);z2.zhouchang2(3);m2.mianji2(3);、接口:概念:接口可以理解為一種特殊的類,由全局常量和公共的抽象方法所組成。類是一種實現(xiàn)體,而接口定義了某一批類所需要遵守的規(guī)范,接口不關(guān)心這些類的內(nèi)部數(shù)據(jù),也不關(guān)心這些類里方法的實現(xiàn)細節(jié),它只規(guī)定這些類里必須提供某些方法b)定義:和類定義不同,定義接口不再使用class關(guān)鍵字, 而是使用interface關(guān)鍵字c)基本語法: 修飾符 interface
22、接口名extends父接口 1, 父接口2.零個到多個常量定義零個到多個抽象方法的定義接口是用來被繼承、被實現(xiàn)的,修飾符一般建議用public注 : 不能使用private和 protected修飾接口d)接口定義常量:接口中的屬性是常量,即使定義時不添加public static final修飾符,系統(tǒng)也會自動加上e)接口定義方法:接口中的方法只能是抽象方法,總是使用,即使定義時不添加publicabstract,系統(tǒng)也會自動加上使用接口 1:i.一個類可以實現(xiàn)一個或多個接口,實現(xiàn)接口使用implements關(guān)鍵字, java中一個類只能繼承一個父類是不夠靈活的,通過實現(xiàn)多個接口可以做補充
23、ii. 繼承父類實現(xiàn)接口的語法為: 修飾符 class類名 extends父類 implements接口 1,接口 2.類體部分 / 如果繼承了抽象類,需要實現(xiàn)繼承的抽象方法;要實現(xiàn)接口中的抽象方法 .如果要繼承父類,繼承父類必須在實現(xiàn)接口之前Eg: new interface Ijiekou(命名習(xí)慣,名字前加大寫I )使用接口 2:接口在使用過程當(dāng)中,還經(jīng)常與匿名內(nèi)部類配合使用,匿名內(nèi)部類就是沒有名字的內(nèi)部類,多用于關(guān)注實現(xiàn)而不關(guān)注實現(xiàn)類的名稱語法格式:Interface i=new Interface().精品文檔public void method()System.out.printl
24、n(“匿名內(nèi)部類實現(xiàn)接口的方式”);注意:末尾以分號結(jié)束或:new Interface()Public void playGame()System.out.println(“使用匿名內(nèi)部類的方式實現(xiàn)接口”);.playGame();h)在接口中定義方法geta(),正確的格式是:void geta();注:接口方法不能有方法體,同時方法的訪問修飾符不能為private和 protected36 、 UML:( unified modeling language),又稱統(tǒng)一建模語言或標準建模語言。是一個支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,為軟件開發(fā)的所有階段提供模型化和可視化支持。用例圖:(
25、the use case diagram)用例圖能夠以可視化的方式,表達系統(tǒng)如何滿足所收集的業(yè)務(wù)規(guī)則,以及特定的用戶需求等信息序列圖:( the sequence diagram)序列圖用于按照交互發(fā)生的一系列順序,顯示對象之間的這些交互用戶柜臺窗口點帳窗口取錢賬戶后臺表明身份請求取錢確認并取款分發(fā)貨幣授權(quán)合法c)類圖:( the class diagram)UML 類圖業(yè)務(wù)邏輯和所有支持結(jié)構(gòu)一同被用于定義全部的代碼結(jié)構(gòu)UML建模工具:i.Visio、 rational rose、powerdesign、綜合練習(xí):答答租車系統(tǒng).精品文檔功能:展示所有可租車輛選擇車型、租車量展示租車清單,包含:
26、總金額、總載貨量及其車型、總載人量及其車型項目分析:數(shù)據(jù)模型分析通過對現(xiàn)實世界的事與物主要特征的分析、抽象,為信息系統(tǒng)的實施提供數(shù)據(jù)存取的數(shù)據(jù)結(jié)構(gòu)以及相應(yīng)的約束數(shù)據(jù)結(jié)構(gòu)的組成:操作(方法)、屬性業(yè)務(wù)模型分析顯示和流程分析38 、異常:走路被樹葉絆倒,吃糖餅燙后腦勺,考試快交卷了才發(fā)現(xiàn)反面還有題.組織圖:ThrowableErrorException虛擬機錯誤內(nèi)存異常RuntimeException檢異常查文件異常SQL異??罩羔槷惓?shù)組下標越界異常類型轉(zhuǎn)換異常算術(shù)異常處理異常:try-catch以及 try-catch-finallyEg:Try一些會拋出異常的方法catch(Exceptio
27、n e)處理該異常的代碼塊finally最終將要執(zhí)行的代碼iii.packagecom.imooc0325;publicclasstest1/*divide:除數(shù)result:結(jié)果try-catch捕獲 while循環(huán)每次循環(huán), divide減 1, result=result+100/divide如果:捕獲異常,打印輸出 拋出異常了! ,返回 -1否則:返回result*/.精品文檔publicinttest()intdivide =10;intresult =100;try while(divide-1)divide-;result =result+100/divide;returnres
28、ult; catch (Exception e)e.printStackTrace();/ 打印異常具體信息System.out .println( 循環(huán)拋出異常了! );return-1; finallySystem.out .println( 我還會回來的 );publicstaticvoidmain(String args)test1 tct=new test1();intresult=tct.test();System.out .println(test方法執(zhí)行完畢,返回值: +result);c)如果三個程序塊之內(nèi)都沒有return語句,則調(diào)用程序塊外的return語句Java 中的
29、異常拋出以及自定義異常Java 中的異常拋出:throw :將產(chǎn)生的異常拋出throws :聲明將要拋出何種類型的異常(聲明)public void方法名(參數(shù)列表)throws異常列表調(diào)用會拋出異常的方法或者:throw new Exception();自定義異常:1.class自定義異常extends異常類型Public class DrunkException extends ExceptionPublic DrunkException(String message)JAVA 中的異常鏈:/*test1():拋出“喝大了”異常test2():調(diào)用 test1(),捕獲“喝大了”異常,并且
30、包裝成運行時異常,繼續(xù)拋出main 方法中,調(diào)用test2(),嘗試捕獲test2()方法拋出的異常.精品文檔*/public void test1() throws DrunkExceptionthrows new DrunkException(喝車別開酒) ;public void test2() trytset1();catch(DrunkException e)RuntimeException newExe=new RuntimeException(司機一滴酒,親人兩行淚 ) ;newExe.initCause(e);throw newExe;public static void ma
31、in(String args)chaintest ct=new chaintest();tryct.tset2();catch(Exception e;)e.printStackTrace();注:捕獲到的異常,可以在當(dāng)前方法的catch塊中處理,也可以拋出給調(diào)用者去處理、實用中的經(jīng)驗與總結(jié):a)處理運行時異常時,采用邏輯去合理規(guī)避,同時輔助try-catch處理b)在多重 catch塊后面,可以加一個catch ( Exception)來處理可能會被遺漏的異常c)對于不確定的代碼,也可以加上try-catch,處理潛在的異常d)盡量去處理異常,切忌只是簡單的調(diào)用printStackTrace
32、()去打印輸出具體如何去處理異常,要根據(jù)不同的業(yè)務(wù)需求和異常類型去決定盡量添加 finally語句塊去釋放占用的資源40 、 JAVA 中的字符串:在 java 中,字符串被作為 String 類型的對象處理。 String 類位于 java.lang 包中。默認情況下,該包被自動導(dǎo)入所有的程序a)String s1=“ imooc ”;/ 創(chuàng)建一個字符串對象imooc,名為 s1b)String s2=new String();/ 創(chuàng)建一個空字符串對象,名為s2c)String s3=new String(“imooc ”);/ 創(chuàng)建一個字符串對象imooc ,名為 s341 、 java
33、中字符串的不變性: String 對象創(chuàng)建后則不能被修改,是不可變的,所謂的修改其實時創(chuàng)建了新的對象,所指向的內(nèi)存空間不同其實質(zhì)是創(chuàng)建了新的字符串對象一旦一個字符串在內(nèi)存中創(chuàng)建,則這個字符串將不可改變42 、 java中 String類的常用方法String 類提供了許多用來處理字符串的方法處理字符串的方法1int length()返回當(dāng)前字符串的長度2int indexOf(int ch)查找 ch 字符子該字符串中第一次出現(xiàn)的位置.精品文檔3int indexOf(String str)查找 str 子字符串在該字符串中第一次出現(xiàn)的位置4int lastIndexOf(int ch)查找
34、ch 字符在該字符串中最后一次出現(xiàn)的位置5int lastIndexOf(String str)查找 str 子字符串在該字符串中最后一次出現(xiàn)的位置6String substring(int beginIndex)獲取從 beginIndex位置開始到結(jié)束的字符串7String substring(int beginIndex,int獲取從 beginIndex位置開始到 endIndex 位置的子字符串中endIndex)8String trim()返回去除了前后空格的字符串9boolean equals(Object obj)將該字符串與指定對象比較,返回 ture 或 false10St
35、ring toLowerCase()將字符串轉(zhuǎn)換為小寫11String toUpperCase()將字符串轉(zhuǎn)換為大寫12char charAt(int index)獲取字符串中指定位置的字符13String split(String regex,int limit)將字符串分割為子字符串,返回字符串?dāng)?shù)組14byte getBytes()將該字符串轉(zhuǎn)換為 byte 數(shù)組字符串 str 中字符的索引從 0 開始c)使用 indexOf進行字符或字符串查找時,如果匹配返回位置索引;如果沒有匹配結(jié)果,返回 -1d)使用 substring( beginIndex,endIndex)進行字符串截取時,包
36、括beginIndex位置的字符,不包括endIndex位置的字符e)packagecom.imooc0325;importjava.util.Arrays;publicclasstest2 publicstaticvoidmain(String args)/ 定義一個字符串“學(xué)習(xí)一下java編程”String str = 學(xué)習(xí)一下java編程 ;打印出字符串長度System.out .println( 字符串長度: +str.length();查找字符編的位置charc= 編 ;System.out .println( 字符 編 的位置: +str.indexOf(c);查找字符串 JAVA
37、 的位置System.out .println( 子字符串 java的位置: +str.indexOf(java);查詢子字符串 imooc 的位置,如果找不到返回 -1System.out .println( 子字符串 imooc的位置: +str.indexOf(imooc);按空格把字符串拆分成一個數(shù)組,并輸出數(shù)組元素String arr=str.split( );System.out .print( 按空格拆分成數(shù)組: +Arrays. toString (arr);System.out .println();/ 獲取索引位置 4,8)之間的字符串System.out .println
38、( 獲取位置 4,8)之間的子符串: +str.substring(4,8);.精品文檔43 、 = 和 equals()的區(qū)別:=:判斷兩個字符串在內(nèi)存中首地址是否相同,即判斷是否是同一個字符串對象equals() :比較存儲在兩個字符串對象中的內(nèi)容是否一致定義一個字符串“學(xué)習(xí) JAVA 編程”String str=學(xué)習(xí) JAVA 編程 ;將字符串轉(zhuǎn)換為小寫System.out.println(轉(zhuǎn)換為小寫:+str.toLowerCase();獲取索引位置為 1 的字符System.out.println(獲取索引為1 位置的字符:+str.charAt(1);將字符串轉(zhuǎn)換為 byte ,并
39、打印輸出byte b=str.getBytes();System.out.print(轉(zhuǎn)換為字符數(shù)組:) ;for(int i=0;ib.length;i+)System.out.print(bi + );System.out.println();和另一個字符串“學(xué)習(xí) JAVA 編程”進行比較String str2 =new String(學(xué)習(xí) JAVA 編程 ) ;System.out.println(str和 str2的內(nèi)存地址相同?+(str = str2);System.out.println(str和 str2的內(nèi)容相同?+str.equals(str2);、定義字符串可以使用:St
40、ringStringBuilder:性能更高,優(yōu)先使用StringBuffer:是線程安全的創(chuàng)建一個空對象: StringBuilder str1=new StringBuilder();e)創(chuàng)建字符串為“imooc ”: StringBuilder str2=new StringBuilder(“imooc ”);f)/ 創(chuàng)建 StringBuilder對象,存儲字符串StringBuilder str =new StringBuilder(hello);str.append( imooc);/在字符串后面追加字符串str.append(520);/在字符串后面追加整數(shù)System.out.
41、println(字符串長度:+str.length();/字符串長度System.out.println(插入前, +str);str.insert(11,!);/在指定位置插入內(nèi)容String str2 =str.toString();/轉(zhuǎn)換為 String對象System.out.println(插入后: +str2);45、 java 中的包裝類:a)基本類型不能調(diào)用方法,功能簡單。為了讓基本數(shù)據(jù)類型也具備對象的特性,java為每個基本數(shù)據(jù)類型都提供了一個包裝類, 這樣我們就可以像操作對象那樣來操作基本數(shù)據(jù)類型。b)包裝類主要提供了兩大類方法:.精品文檔將本類型和其他基本類型進行轉(zhuǎn)換的方
42、法將字符串和本類型及包裝類互相轉(zhuǎn)換的方法c) 基 本 類 型和包裝類型之間的對應(yīng)關(guān)系:序號基本類型對應(yīng)的包裝類1byteByte2shortShort3intInteger4longLong5floatFloat6doubleDouble7charCharacter8booleanBooleanInteger 包裝類的構(gòu)造方法:i.Integer(int value) :創(chuàng)建一個 Integer 對象,表示指定的 int 值ii.Integer(String s) :創(chuàng)建一個 Integer 對象,表示 String 參數(shù)所指示的int 值 i=2;/ 定義 int 類型變量,值
43、為 2Integer m= new Integer(5);/ 定義 Integer 包裝類對象,值為5Integer n=new Integer( “8”);/ 定義 Integer 包裝類對象,值為8Integer 包裝類的常用方法:返回值方法名解釋bytebyteValue()將該 Integer 轉(zhuǎn)為 byte 類型doubledoubleValue()轉(zhuǎn)為 double 類型floatfloatValue()轉(zhuǎn)為 float類型intintValue()轉(zhuǎn)為 int類型longlongValue()轉(zhuǎn)為 long 類型static intparseInt(String s)將字符串轉(zhuǎn)換
44、為 int類型StringtoString()轉(zhuǎn)為字符串類型static IntegervalueOf(String s)將字符串轉(zhuǎn)換為 Integer類型46、 java 中基本類型和包裝類之間的轉(zhuǎn)換a)Integer a =new Integer(3);/ 定義 Integer 包裝類對象,值為3int b=a+5;/ 將對象和基本類型進行運算裝箱:int i=10; / 定義一個 int 基本類型值Integer x =new Integer(i);/ 手動裝箱Integer y =i;/ 自動裝箱c)拆箱:Integer j=new Integer(8);/ 定義一個 integer
45、包裝類對象,值為8int m=Value();/ 手動拆箱為int 類型int n=j;/ 自動拆箱為int 類型.精品文檔47、 java 中基本類型和字符串之間的轉(zhuǎn)換基本類型轉(zhuǎn)換為字符串有三種方法:使用包裝類 toString() 方法使用 String 類的 valueOf() 方法用一個空字符串加上基本類型,得到的就是基本類型數(shù)據(jù)對應(yīng)的字符串Int c=10;String str1=Integer.toString(c);/ 方法一String str2=String.valueOf(c);/ 方法二String str3=c+ ”;/ 方法三將字符串轉(zhuǎn)換成基本類型有兩種方法
46、調(diào)用包裝類的 parseXxx 靜態(tài)方法調(diào)用包裝類的 valueOf 方法轉(zhuǎn)換為基本類型的包裝類,會自動拆箱String str= ”8”;int d=Integer.parseInt(str);/ 方法一int e=Integer.valueOf(str);/ 方法二48、使用 Date 和 SimpleDateFormat 類表示時間獲取當(dāng)前時間: Date 類Date d=new Date();/ 使用默認的構(gòu)造方法創(chuàng)建Date 對象System.out.println(d);/ 輸出 Date 對象( 顯示當(dāng)前時間)格式化日期和時間: SimpleDateFormat 類i. 使用 f
47、ormat() 方法將日期轉(zhuǎn)換為指定格式的文本 / 創(chuàng)建 Date 對象,表示當(dāng)前時間Date d=new Date();/ 創(chuàng)建 SimpleDateFormat 對象,指定目標格式SimpleDateFormat sdf=new SimpleDateFormat( “yyyy-MM-dd HH:mm:ss ”);調(diào)用 format() 方法,格式化時間,轉(zhuǎn)換為指定格式的字符串String today =sdf.format(d);輸出轉(zhuǎn)換后的字符串System.out.println(today);使用 parse()方法將文本轉(zhuǎn)換為日期 / 創(chuàng)建日期格式的字符串String day=”2
48、016 年 3 月 27 日 15:30:33 ”;/ 創(chuàng)建 SimpleDate.Format 對象,指定字符串的日期格式SimpleDateFormat df=new SimpleDateFormat( “yyyy 年 MM 月 dd 日 HH:mm:ss ”);調(diào)用 parse()方法將字符串轉(zhuǎn)換為日期Date date=df.parse(day);輸出轉(zhuǎn)換后的時間System.out.println( “當(dāng)前時間: ”+date);導(dǎo)包:Import java.text.parseexception;Import java.text.simple.date.format;Import
49、java.util.date;49、 Calendar 類的應(yīng)用(相比Date 更好 )包: java.util.Calendar.精品文檔獲取年月日、時間信息 package com.imooc0327 import java.util.Calendar;publicclasstest2 publicstaticvoid main(String args)Calendar c =Calendar.getInstance();/創(chuàng)建 Canlendar對象intyear =c.get(Calendar.YEAR);/ 獲取年intmouth =c.get(Calendar.MONTH)+1;/
50、獲取月份, 0 表示1 月份intday =c.get(Calendar.DAY_OF_MONTH); / 獲取日期inthour =c.get(Calendar.HOUR_OF_DAY); / 獲取小時intminute =c.get(Calendar.MINUTE);/獲取分鐘intsecond =c.get(Calendar.SECOND);/獲取秒System.out .println( 當(dāng)前時間: +year+- +mouth+ - +day+ +hour+ : +minute+ : +second);50 、使用Math 類操作數(shù)據(jù)a)所有方法都是靜態(tài)方法,可以直接使用類名 . 方
51、法名常用方法:i.long :round(),返回四舍五入后的整數(shù)ii.double : floor() ,返回小于參數(shù)的最大整數(shù)iii.Double:ceil() ,返回大于參數(shù)的最小整數(shù)iv.Double:random() ,返回 0,1) 之間的隨機數(shù)浮點數(shù)實例:package com.imooc0327;public classtest3 publicstaticvoid main(String args)doublea=12.21;/定義一個 double 類型的變量intb=(int)a;/將 double類型強制轉(zhuǎn)換為int 類型,去掉小數(shù)點System.out .println
52、( 強制類型轉(zhuǎn)換: +b);longc=Math. round(a);/ 調(diào)用一個 round方法,進行四舍五入System.out .println( 四舍五入: +c);doubled=Math. floor (a);/調(diào)用 floor方法,返回小于參數(shù)的最大整數(shù)System.out .println(floor:+d);doublee=Math. ceil(a);/ 調(diào)用 ceil 方法,返回大于參數(shù)的最小整數(shù)System.out .println(ceil:+e);doublex=Math. random ();/調(diào)用 random 方法,產(chǎn)生 0,1) 之間的隨機數(shù)浮點數(shù)System.out .println( 隨機數(shù) +x);inty=(int)(Math.random ()*99);/ 產(chǎn)生 0,99)之間的隨機整數(shù)System.out .println( 產(chǎn)生 0,99)之間的隨機整數(shù): +y);.精品文檔51 、 java中的集合框架:Ja
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 全新員工入職合同下載
- 2025廣告發(fā)布委托合同書版范本
- 全新房地產(chǎn)買賣合同范文下載
- 公司業(yè)務(wù)擔(dān)保合同
- 單位貨物采購合同格式
- 幼兒園股份合伙經(jīng)營合作合同書
- 2024年中考物理(安徽卷)真題詳細解讀及評析
- 地板磚購銷合同模板
- 拓寬知識面的重要性主題班會
- 2025如果合同標的不合格怎么辦反擔(dān)保
- 浙教版八年級下冊科學(xué)第一章 電和磁整章思維導(dǎo)圖
- (正式版)SH∕T 3541-2024 石油化工泵組施工及驗收規(guī)范
- 動物疫病傳染病防控培訓(xùn)制度
- 美團代運營合同模板
- 初中英語七選五經(jīng)典5篇(附帶答案)
- GB/T 43676-2024水冷預(yù)混低氮燃燒器通用技術(shù)要求
- 特種設(shè)備檢驗現(xiàn)場事故案例分析
- 2023-2024學(xué)年西安市高二數(shù)學(xué)第一學(xué)期期末考試卷附答案解析
- 關(guān)于教師誦讀技能培訓(xùn)課件
- 化學(xué)品使用人員培訓(xùn)課程
- 【京東倉庫出庫作業(yè)優(yōu)化設(shè)計13000字(論文)】
評論
0/150
提交評論