java中常用API、Scanner类、匿名对象、Random类、ArrayList类、对象数组
java中常用API:
API:Application Programming Interface,應(yīng)用程序編程接口。Java API是JDK中提供給我們使用的類(lèi)的說(shuō)明文檔。這些類(lèi)將底層的代碼實(shí)現(xiàn)封裝了起來(lái),我們不需要關(guān)心這些類(lèi)是如何實(shí)現(xiàn)的,只需要知道如何使用即可。
Scanner類(lèi):
Scanner類(lèi)是JDK提供給我們獲取鍵盤(pán)輸入內(nèi)容的類(lèi),它是一個(gè)引用型類(lèi),java中除基本類(lèi)型數(shù)據(jù)外,都為引用型類(lèi)。
// 1.引用類(lèi)型類(lèi)使用步驟:導(dǎo)包--創(chuàng)建--使用,一般情況使用引用類(lèi)型是這三個(gè)步驟,但是包為java.lang的類(lèi)或當(dāng)前類(lèi)和目標(biāo)類(lèi)在同一個(gè)包下,則不需要導(dǎo)包,如:String類(lèi)可以直接使用。 //導(dǎo)包,導(dǎo)包語(yǔ)句寫(xiě)在public class語(yǔ)句前面,其格式為:import 包路徑.類(lèi)名稱(chēng) import java.util.Scanner;public class ScannerObj{public static void main(String[] args){// 創(chuàng)建:創(chuàng)建語(yǔ)句寫(xiě)在main方法中,其格式為:類(lèi)名稱(chēng) 變量名(對(duì)象名)= new 類(lèi)名稱(chēng)(可傳入?yún)?shù));Scanner sc = new Scanner(System.in);//Scanner類(lèi)中規(guī)定要傳入類(lèi)容,否則會(huì)報(bào)錯(cuò),傳入類(lèi)容的源頭有很多,如文件、網(wǎng)絡(luò)等,這里使用System.in表示從鍵盤(pán)傳入// 使用:使用語(yǔ)句格式為:sc.方法名(),方法名可以在官方文檔中查閱具體的名稱(chēng)int intnumber = sc.nextInt();// nextInt()方法用于獲取整型數(shù)據(jù)System.out.println("intnumber:"+intnumber);//當(dāng)javac -encoding UTF-8 ScannerObj.java編譯后,java ScannerObj執(zhí)行程序時(shí),此時(shí)在鍵盤(pán)中敲數(shù)字,之后回車(chē)就會(huì)打印出輸入的數(shù)字String str = sc.next();//next()用于獲取字符串System.out.println("str:"+str);//當(dāng)javac -encoding UTF-8 ScannerObj.java編譯后,java ScannerObj執(zhí)行程序時(shí),此時(shí)在鍵盤(pán)中敲什么,回車(chē)就會(huì)打印顯示什么} }案例:
// 案例:封裝一個(gè)求鍵盤(pán)輸入兩個(gè)int類(lèi)型的數(shù)字相乘的方法,并在鍵盤(pán)中輸入2回車(chē)和5回車(chē)進(jìn)行測(cè)試。 import java.util.Scanner;//1.導(dǎo)包:此語(yǔ)句在某些編輯器中可以不用手動(dòng)寫(xiě)入,當(dāng)創(chuàng)建此類(lèi)的對(duì)象時(shí)會(huì)自動(dòng)生成此代碼public class ScannerMult{public static void main(String[] args){// 3.調(diào)用下面定義的mult方法并將mult方法的返回值賦值給變量result:int result = mult();// 4.通過(guò)System.out.println打印result結(jié)果:System.out.println("result的值為:" + result);//result的值為:10}// 2.定義一個(gè)返回兩個(gè)int數(shù)字相乘的方法mult:public static int mult(){// 2-1.創(chuàng)建Scanner對(duì)象:Scanner sc = new Scanner(System.in);// 優(yōu)化用戶體驗(yàn)可省略:通過(guò)System.out.println()提示用戶進(jìn)行輸入:System.out.println("請(qǐng)輸入第一個(gè)int類(lèi)型的數(shù)字后回車(chē)");// 2-2.將鍵盤(pán)上兩次輸入的值賦值給變量num1和num2:int num1 = sc.nextInt();// 優(yōu)化用戶體驗(yàn)可省略:通過(guò)System.out.println()提示用戶進(jìn)行輸入:System.out.println("請(qǐng)輸入第二個(gè)int類(lèi)型的數(shù)字后回車(chē)");int num2 = sc.nextInt();// 2-3.將num1和num2相乘后return:return num1 * num2;} }提示:Scanner類(lèi)的方法還有很多種,具體可以到官方文檔進(jìn)行查閱。
匿名對(duì)象:
創(chuàng)建對(duì)象的時(shí)候可以給對(duì)象取一個(gè)名字,當(dāng)不給對(duì)象取名字的時(shí)候,可以稱(chēng)為匿名對(duì)象。匿名對(duì)象是一次性的,也就是說(shuō),每次使用匿名對(duì)象的時(shí)候都要?jiǎng)?chuàng)建,實(shí)際開(kāi)發(fā)中只有使用一次的對(duì)象推薦使用匿名對(duì)象。
// 1.創(chuàng)建普通對(duì)象的基本格式:類(lèi)名稱(chēng) 變量名 = new 類(lèi)名稱(chēng)(可傳參數(shù)); // 2.創(chuàng)建匿名對(duì)象的基本格式:new 類(lèi)名稱(chēng)(可傳參數(shù));匿名對(duì)象每次使用都要?jiǎng)?chuàng)建,匿名對(duì)象是一次性的,匿名對(duì)象使用成員變量:new 類(lèi)名稱(chēng)(參數(shù)).成員變量 = "值";使用方法格式:new 類(lèi)名稱(chēng)(參數(shù)).成員方法()// 3.應(yīng)該定義一個(gè)Person類(lèi)文件,并導(dǎo)入到此作用域,如果在當(dāng)前包中定義的Person類(lèi),則無(wú)需導(dǎo)入 public class Anonymous{public static void main(String[] args){// 4.實(shí)例化一個(gè)Person的匿名對(duì)象:new Person().names = "jack";// 5.打印匿名對(duì)象的names:System.out.println(new Person().names);//null,這里實(shí)際已經(jīng)是第二次創(chuàng)建匿名對(duì)象了,創(chuàng)建完匿名對(duì)象沒(méi)有賦值,所以為null// 6.調(diào)用匿名對(duì)象的方法say:new Person().say();//hello,} }定義Person.java代碼如下:
// 3.定義一個(gè)Person類(lèi): public class Person{String names;public void say(){System.out.println("hello");} }提示:匿名對(duì)象也是可以做為方法的返回值或參數(shù)進(jìn)行使用的。
Random類(lèi):
Random類(lèi)是用來(lái)創(chuàng)建生成隨機(jī)數(shù)的,如:
// 1.Random類(lèi)的使用方法和前面提到過(guò)的Scanner類(lèi)的使用方法一樣,也是導(dǎo)包--創(chuàng)建--使用,其實(shí)一般情況下所有引用型類(lèi)都是分這三個(gè)步驟: import java.util.Random;//導(dǎo)包,可自動(dòng)生成 public class RandomObj{public static void main(String[] args){Random randoms = new Random();//2.創(chuàng)建對(duì)象// 3.使用:int numInt = randoms.nextInt();//3-1Random的nextInt()方法不傳參數(shù)產(chǎn)生一個(gè)int取值范圍內(nèi)的數(shù),有正負(fù);System.out.println("randoms.nextInt()的值為:"+numInt);//多次測(cè)試有不同的結(jié)果,如:320109037、142656520、-426750655// 3-2:當(dāng)nextInt()方法中傳入一個(gè)int數(shù)值時(shí),此時(shí)會(huì)生成[0,參數(shù))范圍的隨機(jī)數(shù):int numIntMin5 = randoms.nextInt(5);System.out.println("randoms.nextInt(5)的值為:"+numIntMin5);//經(jīng)測(cè)試會(huì)生成0~4的int數(shù)值} }提示:Random類(lèi)的方法還有很多種,具體可以到官方文檔進(jìn)行查閱。
ArrayList類(lèi):
對(duì)象數(shù)組:把對(duì)象存在數(shù)組中,這樣的數(shù)組稱(chēng)為對(duì)象數(shù)組。對(duì)象數(shù)組有個(gè)缺點(diǎn):當(dāng)程序運(yùn)行時(shí),數(shù)組的長(zhǎng)度是無(wú)法改變的,為解決這個(gè)問(wèn)題,java提供了另一個(gè)可以存對(duì)象的容器:ArrayList類(lèi)實(shí)例化的對(duì)象,ArrayList可以使我們便捷的存儲(chǔ)和操作對(duì)象數(shù)據(jù)。
// 1.ArrayList類(lèi)實(shí)例化的對(duì)象可以存對(duì)象,且對(duì)象的長(zhǎng)度是可以變化的;但是集合只能直接存引用類(lèi)型數(shù)據(jù)(基本數(shù)據(jù)類(lèi)型要使用包裝類(lèi))且類(lèi)型要統(tǒng)一,這里指泛型。 import java.util.ArrayList;//導(dǎo)包public class ArrayListObj{public static void main(String[] args){// 2.創(chuàng)建對(duì)象:ArrayList<String> arrlist = new ArrayList<>();//<>尖括號(hào)在這里表示泛型(集合當(dāng)中的元素類(lèi)型相同),尖括號(hào)里面可以寫(xiě)具體引用數(shù)據(jù)類(lèi)型是什么,前面的尖括號(hào)中一定寫(xiě),后面的<>中類(lèi)型在新版1.7+JDK中可以省略,但是<>不能省略System.out.println(arrlist);//[],注意:在集合中,直接打印對(duì)象的變量名不會(huì)是一個(gè)地址值,而是內(nèi)容,如果內(nèi)容為空,則打印:[]// 3-1.若要給數(shù)組集合添加元素,那么就得使用:add()方法,返回一個(gè)布爾值,表示添加是否成功arrlist.add("apple");arrlist.add("蘋(píng)果");//添加集合元素的時(shí)候一定要和前面泛型一致,否則會(huì)報(bào)錯(cuò)的。System.out.println(arrlist);//[apple, 蘋(píng)果]// 3-2:獲取集合中某元素的值:get(索引值),索引值從0開(kāi)始,和數(shù)組類(lèi)似,如:System.out.println(arrlist.get(1));//蘋(píng)果// 3-3:刪除集合中的某元素:remove(索引值),它返回被刪除元素的值,如:System.out.println(arrlist.remove(0));//appleSystem.out.println(arrlist);//[蘋(píng)果]// 3-4:獲取集合的尺寸長(zhǎng)度:size(),返回集合元素個(gè)數(shù)System.out.println(arrlist.size());//1,因?yàn)榍懊嬗袆h除,只剩一個(gè)元素// 4.包裝類(lèi):將基本數(shù)據(jù)類(lèi)型包裝成引用型數(shù)據(jù)的過(guò)程:括號(hào)中為對(duì)應(yīng)包裝類(lèi),byte(Byte)、short(Short)、int(Integer)、long(Long)、float(Float)、double(Double)、char(Character)、boolean(Boolean),即特殊的只有:int和char,如:ArrayList<Integer> intlist = new ArrayList<>();intlist.add(1);intlist.add(2);System.out.println(intlist);//[1, 2],其它包裝類(lèi)的用法完全一致。int numints = intlist.get(1);System.out.println(numints);//2} }提示:本文圖片等素材來(lái)源于網(wǎng)絡(luò),若有侵權(quán),請(qǐng)發(fā)郵件至郵箱:810665436@qq.com聯(lián)系筆者刪除。
筆者:苦海
總結(jié)
以上是生活随笔為你收集整理的java中常用API、Scanner类、匿名对象、Random类、ArrayList类、对象数组的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: php中命名空间、面向对象、访问控制、接
- 下一篇: phpdesigner8 php7.0,