-
錯(cuò)誤信息提示查看全部 -
私有化(公司上班)
查看全部 -
一、try-catch(多catch塊)-finally
(1)try塊:負(fù)責(zé)捕獲異常,一旦try中發(fā)現(xiàn)異常,程序的控制權(quán)將被移交給catch塊中的異常處理程序。【try語(yǔ)句塊不可以獨(dú)立存在,必須與 catch 或者 finally 塊同存】
(2)catch塊:如何處理?比如發(fā)出警告:提示、檢查配置、網(wǎng)絡(luò)連接,記錄錯(cuò)誤等。執(zhí)行完catch塊之后程序跳出catch塊,繼續(xù)執(zhí)行后面的代碼。
·編寫catch塊的注意事項(xiàng):多個(gè)catch塊處理的異常類,要按照先catch子類后catch父類的處理方式,因?yàn)闀?huì)【就近處理】異常(由上自下)。
(3)finally:最終執(zhí)行的代碼,用于關(guān)閉和釋放資源等查看全部 -
一、try-catch(多catch塊)-finally
(1)try塊:負(fù)責(zé)捕獲異常,一旦try中發(fā)現(xiàn)異常,程序的控制權(quán)將被移交給catch塊中的異常處理程序?!総ry語(yǔ)句塊不可以獨(dú)立存在,必須與 catch 或者 finally 塊同存】
(2)catch塊:如何處理?比如發(fā)出警告:提示、檢查配置、網(wǎng)絡(luò)連接,記錄錯(cuò)誤等。執(zhí)行完catch塊之后程序跳出catch塊,繼續(xù)執(zhí)行后面的代碼。
·編寫catch塊的注意事項(xiàng):多個(gè)catch塊處理的異常類,要按照先catch子類后catch父類的處理方式,因?yàn)闀?huì)【就近處理】異常(由上自下)。
(3)finally:最終執(zhí)行的代碼,用于關(guān)閉和釋放資源等查看全部 -
Comparable和Comparator比較自定義泛型

查看全部 -
public class HelloWorld {
? ? public static void main(String[] args) {
String s1 = "imooc";
String s2 = "imooc";
? ? ? ??
? ? ? ? //定義字符串s3,保存“I love”和s1拼接后的內(nèi)容
String s3 ="I love"+ s1
? ? ? ? // 比較字符串s1和s2
// imooc為常量字符串,多次出現(xiàn)時(shí)會(huì)被編譯器優(yōu)化,只創(chuàng)建一個(gè)對(duì)象
System.out.println("s1和s2內(nèi)存地址相同嗎?" + (s1 == s2));
? ? ? ??
? ? ? ? //比較字符串s1和s3
System.out.println("s1和s3內(nèi)存地址相同嗎?" + (s1 == s3)? ? ? ? ? ? ? ? );
String s4 = "I love " + s1;
? ? ? ? ?//比較字符串s4和s3
// s1是變量,s4在運(yùn)行時(shí)才知道具體值,所以s3和s4是不同的對(duì)象
System.out.println("s3和s4內(nèi)存地址相同嗎?" + (s4 == s3));
}
}
查看全部 -
Set接口及其實(shí)現(xiàn)類——HashSet
Set是元素?zé)o序并且不可以重復(fù)的集合,被稱為集;
HashSet——哈希集,是Set的一個(gè)重要實(shí)現(xiàn)類。
1、Set沒有像List中set()方法一樣就修改,因?yàn)長(zhǎng)ist是有序的,可以指定位置,而Set是無(wú)序的。
2、查詢遍歷時(shí),Set不能用get()方法去獲取,因?yàn)闊o(wú)序沒有指定索引ID,但可以使用foreach和iterator來(lái)遍歷,但是每次遍歷出來(lái)可能順序都不一樣,還是因?yàn)闊o(wú)序造成的。
3、Set中的size(),add(),addAll(),remove(),removeAll()與List類似。
4、Set還可以添加null查看全部 -
1、List<>()這是一個(gè)有序序列。因?yàn)長(zhǎng)ist是一個(gè)接口,并不能實(shí)例化。因此我們需要將用Arraylist來(lái)實(shí)現(xiàn)。
2、Arraylist是一個(gè)數(shù)組序列也是list的一個(gè)重要的實(shí)現(xiàn)類,用來(lái)執(zhí)行l(wèi)ist的增刪改查等。
List<>() a=new Arraylist<>(); 或者通過構(gòu)造參數(shù)的形式實(shí)現(xiàn)。
3、在現(xiàn)實(shí)開發(fā)當(dāng)中,課程等成員變量是私有化的,需要用get()和set()方法。
4、對(duì)象被存入集合都變成object類型了 取出時(shí)需要類型強(qiáng)轉(zhuǎn)。但在List<類型>()聲明了類型的就只能存入該類型的數(shù)據(jù),并且提取時(shí)也只會(huì)是該類型,不用強(qiáng)轉(zhuǎn)。
例:Course temp = (Course)coursesToSelect.get(0);//強(qiáng)轉(zhuǎn)
5、調(diào)用Add()方法添加到List中。有兩種方法:
a) 直接添加,例:CoursesToSelect.add(cr1);
b) 可以指定添加的位置,例:CoursesToSelect.add(0,cr1);
6、如果添加到List中的長(zhǎng)度大于他目前的長(zhǎng)度,則系統(tǒng)會(huì)出現(xiàn)異常,即數(shù)組下表越界異常
7、list中還有addAll(List list)
就是將一個(gè)List里面的元素一股腦的全都加進(jìn)去
一般定義一個(gè)數(shù)組,如何把一個(gè)數(shù)組轉(zhuǎn)換成List? 調(diào)用方法Arrays.asList(Object[] obs);//可以將一個(gè)數(shù)組轉(zhuǎn)換為一個(gè)List,然后可以將這個(gè)元素傳進(jìn)addAll()里面
當(dāng)然還有addAll(index,List list)方法
8、迭代器只是用來(lái)遍歷集合中的元素,本身不具備任何存儲(chǔ)元素的功能,換而言之,迭代器是依賴于某個(gè)集合而存在的,本身不能獨(dú)立存在。
讀取元素三種方法:
a)for()
b)Iterator是一個(gè)接口,依賴于集合存在的
Iterator it=courseToSelect.iterator();
while(it.hasNext()){} //迭代
c)foreach
9、使用set(index,Object element)修改元素,index表示索引位置,element表示新對(duì)象。查看全部 -
1、List<>()這是一個(gè)有序序列。因?yàn)長(zhǎng)ist是一個(gè)接口,并不能實(shí)例化。因此我們需要將用Arraylist來(lái)實(shí)現(xiàn)。
2、Arraylist是一個(gè)數(shù)組序列也是list的一個(gè)重要的實(shí)現(xiàn)類,用來(lái)執(zhí)行l(wèi)ist的增刪改查等。
List<>() a=new Arraylist<>(); 或者通過構(gòu)造參數(shù)的形式實(shí)現(xiàn)。
3、在現(xiàn)實(shí)開發(fā)當(dāng)中,課程等成員變量是私有化的,需要用get()和set()方法。
4、對(duì)象被存入集合都變成object類型了 取出時(shí)需要類型強(qiáng)轉(zhuǎn)。但在List<類型>()聲明了類型的就只能存入該類型的數(shù)據(jù),并且提取時(shí)也只會(huì)是該類型,不用強(qiáng)轉(zhuǎn)。
例:Course temp = (Course)coursesToSelect.get(0);//強(qiáng)轉(zhuǎn)
5、調(diào)用Add()方法添加到List中。有兩種方法:
a) 直接添加,例:CoursesToSelect.add(cr1);
b) 可以指定添加的位置,例:CoursesToSelect.add(0,cr1);
6、如果添加到List中的長(zhǎng)度大于他目前的長(zhǎng)度,則系統(tǒng)會(huì)出現(xiàn)異常,即數(shù)組下表越界異常
7、list中還有addAll(List list)
就是將一個(gè)List里面的元素一股腦的全都加進(jìn)去
一般定義一個(gè)數(shù)組,如何把一個(gè)數(shù)組轉(zhuǎn)換成List? 調(diào)用方法Arrays.asList(Object[] obs);//可以將一個(gè)數(shù)組轉(zhuǎn)換為一個(gè)List,然后可以將這個(gè)元素傳進(jìn)addAll()里面
當(dāng)然還有addAll(index,List list)方法
8、迭代器只是用來(lái)遍歷集合中的元素,本身不具備任何存儲(chǔ)元素的功能,換而言之,迭代器是依賴于某個(gè)集合而存在的,本身不能獨(dú)立存在。
讀取元素三種方法:
a)for()
b)Iterator是一個(gè)接口,依賴于集合存在的
Iterator it=courseToSelect.iterator();
while(it.hasNext()){} //迭代
c)foreach
9、使用set(index,Object element)修改元素,index表示索引位置,element表示新對(duì)象。查看全部 -
1、List<>()這是一個(gè)有序序列。因?yàn)長(zhǎng)ist是一個(gè)接口,并不能實(shí)例化。因此我們需要將用Arraylist來(lái)實(shí)現(xiàn)。
2、Arraylist是一個(gè)數(shù)組序列也是list的一個(gè)重要的實(shí)現(xiàn)類,用來(lái)執(zhí)行l(wèi)ist的增刪改查等。
List<>() a=new Arraylist<>(); 或者通過構(gòu)造參數(shù)的形式實(shí)現(xiàn)。
3、在現(xiàn)實(shí)開發(fā)當(dāng)中,課程等成員變量是私有化的,需要用get()和set()方法。
4、對(duì)象被存入集合都變成object類型了 取出時(shí)需要類型強(qiáng)轉(zhuǎn)。但在List<類型>()聲明了類型的就只能存入該類型的數(shù)據(jù),并且提取時(shí)也只會(huì)是該類型,不用強(qiáng)轉(zhuǎn)。
例:Course temp = (Course)coursesToSelect.get(0);//強(qiáng)轉(zhuǎn)
5、調(diào)用Add()方法添加到List中。有兩種方法:
a) 直接添加,例:CoursesToSelect.add(cr1);
b) 可以指定添加的位置,例:CoursesToSelect.add(0,cr1);
6、如果添加到List中的長(zhǎng)度大于他目前的長(zhǎng)度,則系統(tǒng)會(huì)出現(xiàn)異常,即數(shù)組下表越界異常
7、list中還有addAll(List list)
就是將一個(gè)List里面的元素一股腦的全都加進(jìn)去
一般定義一個(gè)數(shù)組,如何把一個(gè)數(shù)組轉(zhuǎn)換成List? 調(diào)用方法Arrays.asList(Object[] obs);//可以將一個(gè)數(shù)組轉(zhuǎn)換為一個(gè)List,然后可以將這個(gè)元素傳進(jìn)addAll()里面
當(dāng)然還有addAll(index,List list)方法
8、迭代器只是用來(lái)遍歷集合中的元素,本身不具備任何存儲(chǔ)元素的功能,換而言之,迭代器是依賴于某個(gè)集合而存在的,本身不能獨(dú)立存在。
讀取元素三種方法:
a)for()
b)Iterator是一個(gè)接口,依賴于集合存在的
Iterator it=courseToSelect.iterator();
while(it.hasNext()){} //迭代
c)foreach
9、使用set(index,Object element)修改元素,index表示索引位置,element表示新對(duì)象。查看全部 -
1、集合類與數(shù)組的比較:
????1.1 數(shù)組的長(zhǎng)度是固定的,但是集合的長(zhǎng)度是在運(yùn)行過程中可以動(dòng)態(tài)修改的;
????1.2 數(shù)組只能通過下標(biāo)進(jìn)行元素查找,但是部分集合提供了映射關(guān)系,可以通過關(guān)鍵字快速查找集合中的元素
查看全部 -
Math.floor()和Math.cell() 雖然返回的是整數(shù),但是返回值類型為double;
因?yàn)椋?/p>
Java math.ceil或者Java math.floor()代表取最小或最大整數(shù),這個(gè)值很有可能會(huì)超過整數(shù)范圍,所以得用double來(lái)表示。
Double.MaxValue = 1.7976931348623157E+308
Integer.MaxValue = 2,147,483,647
查看全部 -
如果想要取得(0,XX]之間的隨機(jī)浮點(diǎn)數(shù),只需要使用:
double a = Math.random()*XX;
由于Math.random()返回的值為浮點(diǎn)數(shù),如果想要返回(0,XX]之間的隨機(jī)整數(shù),只需要將返回值強(qiáng)制類型轉(zhuǎn)換即可:
int b? = (int) ( Math.random()*XX );
查看全部 -
多種catch塊捕獲多種異常

finally放一些最終執(zhí)行的代碼
查看全部 -
Throwable
Error Exception

查看全部 -
筆記查看全部
-
字符為基本數(shù)據(jù)類型
只能用==來(lái)進(jìn)行比較
查看全部 -
我們以 Integer 包裝類為例,來(lái)看下包裝類的特性。
Integer 包裝類的構(gòu)造方法:

如下代碼所示:

Integer包裝類的常用方法:
查看全部 -
// 從后往前每隔三位插入逗號(hào)
for (int i = str.length(); i > 0; i-=3) {
? ? ? ? ? ? str.insert(i,",");
? ? ? ? }
查看全部 -
StringBuffer 是線程安全的,而 StringBuilder 則沒有實(shí)現(xiàn)線程安全功能,所以性能略高。因此一般情況下,如果需要?jiǎng)?chuàng)建一個(gè)內(nèi)容可變的字符串對(duì)象,應(yīng)優(yōu)先考慮使用 StringBuilder 類。
查看全部 -
charAt(index)獲取字符串S的對(duì)應(yīng)索引位置的字符
查看全部
舉報(bào)