-
錯誤信息提示
查看全部 -
私有化(公司上班)
查看全部 -
一、try-catch(多catch塊)-finally
(1)try塊:負(fù)責(zé)捕獲異常,一旦try中發(fā)現(xiàn)異常,程序的控制權(quán)將被移交給catch塊中的異常處理程序?!総ry語句塊不可以獨立存在,必須與 catch 或者 finally 塊同存】
(2)catch塊:如何處理?比如發(fā)出警告:提示、檢查配置、網(wǎng)絡(luò)連接,記錄錯誤等。執(zhí)行完catch塊之后程序跳出catch塊,繼續(xù)執(zhí)行后面的代碼。
·編寫catch塊的注意事項:多個catch塊處理的異常類,要按照先catch子類后catch父類的處理方式,因為會【就近處理】異常(由上自下)。
(3)finally:最終執(zhí)行的代碼,用于關(guān)閉和釋放資源等查看全部 -
一、try-catch(多catch塊)-finally
(1)try塊:負(fù)責(zé)捕獲異常,一旦try中發(fā)現(xiàn)異常,程序的控制權(quán)將被移交給catch塊中的異常處理程序。【try語句塊不可以獨立存在,必須與 catch 或者 finally 塊同存】
(2)catch塊:如何處理?比如發(fā)出警告:提示、檢查配置、網(wǎng)絡(luò)連接,記錄錯誤等。執(zhí)行完catch塊之后程序跳出catch塊,繼續(xù)執(zhí)行后面的代碼。
·編寫catch塊的注意事項:多個catch塊處理的異常類,要按照先catch子類后catch父類的處理方式,因為會【就近處理】異常(由上自下)。
(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)時會被編譯器優(yōu)化,只創(chuàng)建一個對象
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在運行時才知道具體值,所以s3和s4是不同的對象
System.out.println("s3和s4內(nèi)存地址相同嗎?" + (s4 == s3));
}
}
查看全部 -
Set接口及其實現(xiàn)類——HashSet
Set是元素?zé)o序并且不可以重復(fù)的集合,被稱為集;
HashSet——哈希集,是Set的一個重要實現(xiàn)類。
1、Set沒有像List中set()方法一樣就修改,因為List是有序的,可以指定位置,而Set是無序的。
2、查詢遍歷時,Set不能用get()方法去獲取,因為無序沒有指定索引ID,但可以使用foreach和iterator來遍歷,但是每次遍歷出來可能順序都不一樣,還是因為無序造成的。
3、Set中的size(),add(),addAll(),remove(),removeAll()與List類似。
4、Set還可以添加null查看全部 -
1、List<>()這是一個有序序列。因為List是一個接口,并不能實例化。因此我們需要將用Arraylist來實現(xiàn)。
2、Arraylist是一個數(shù)組序列也是list的一個重要的實現(xiàn)類,用來執(zhí)行l(wèi)ist的增刪改查等。
List<>() a=new Arraylist<>(); 或者通過構(gòu)造參數(shù)的形式實現(xiàn)。
3、在現(xiàn)實開發(fā)當(dāng)中,課程等成員變量是私有化的,需要用get()和set()方法。
4、對象被存入集合都變成object類型了 取出時需要類型強轉(zhuǎn)。但在List<類型>()聲明了類型的就只能存入該類型的數(shù)據(jù),并且提取時也只會是該類型,不用強轉(zhuǎn)。
例:Course temp = (Course)coursesToSelect.get(0);//強轉(zhuǎn)
5、調(diào)用Add()方法添加到List中。有兩種方法:
a) 直接添加,例:CoursesToSelect.add(cr1);
b) 可以指定添加的位置,例:CoursesToSelect.add(0,cr1);
6、如果添加到List中的長度大于他目前的長度,則系統(tǒng)會出現(xiàn)異常,即數(shù)組下表越界異常
7、list中還有addAll(List list)
就是將一個List里面的元素一股腦的全都加進(jìn)去
一般定義一個數(shù)組,如何把一個數(shù)組轉(zhuǎn)換成List? 調(diào)用方法Arrays.asList(Object[] obs);//可以將一個數(shù)組轉(zhuǎn)換為一個List,然后可以將這個元素傳進(jìn)addAll()里面
當(dāng)然還有addAll(index,List list)方法
8、迭代器只是用來遍歷集合中的元素,本身不具備任何存儲元素的功能,換而言之,迭代器是依賴于某個集合而存在的,本身不能獨立存在。
讀取元素三種方法:
a)for()
b)Iterator是一個接口,依賴于集合存在的
Iterator it=courseToSelect.iterator();
while(it.hasNext()){} //迭代
c)foreach
9、使用set(index,Object element)修改元素,index表示索引位置,element表示新對象。查看全部 -
1、List<>()這是一個有序序列。因為List是一個接口,并不能實例化。因此我們需要將用Arraylist來實現(xiàn)。
2、Arraylist是一個數(shù)組序列也是list的一個重要的實現(xiàn)類,用來執(zhí)行l(wèi)ist的增刪改查等。
List<>() a=new Arraylist<>(); 或者通過構(gòu)造參數(shù)的形式實現(xiàn)。
3、在現(xiàn)實開發(fā)當(dāng)中,課程等成員變量是私有化的,需要用get()和set()方法。
4、對象被存入集合都變成object類型了 取出時需要類型強轉(zhuǎn)。但在List<類型>()聲明了類型的就只能存入該類型的數(shù)據(jù),并且提取時也只會是該類型,不用強轉(zhuǎn)。
例:Course temp = (Course)coursesToSelect.get(0);//強轉(zhuǎn)
5、調(diào)用Add()方法添加到List中。有兩種方法:
a) 直接添加,例:CoursesToSelect.add(cr1);
b) 可以指定添加的位置,例:CoursesToSelect.add(0,cr1);
6、如果添加到List中的長度大于他目前的長度,則系統(tǒng)會出現(xiàn)異常,即數(shù)組下表越界異常
7、list中還有addAll(List list)
就是將一個List里面的元素一股腦的全都加進(jìn)去
一般定義一個數(shù)組,如何把一個數(shù)組轉(zhuǎn)換成List? 調(diào)用方法Arrays.asList(Object[] obs);//可以將一個數(shù)組轉(zhuǎn)換為一個List,然后可以將這個元素傳進(jìn)addAll()里面
當(dāng)然還有addAll(index,List list)方法
8、迭代器只是用來遍歷集合中的元素,本身不具備任何存儲元素的功能,換而言之,迭代器是依賴于某個集合而存在的,本身不能獨立存在。
讀取元素三種方法:
a)for()
b)Iterator是一個接口,依賴于集合存在的
Iterator it=courseToSelect.iterator();
while(it.hasNext()){} //迭代
c)foreach
9、使用set(index,Object element)修改元素,index表示索引位置,element表示新對象。查看全部 -
1、List<>()這是一個有序序列。因為List是一個接口,并不能實例化。因此我們需要將用Arraylist來實現(xiàn)。
2、Arraylist是一個數(shù)組序列也是list的一個重要的實現(xiàn)類,用來執(zhí)行l(wèi)ist的增刪改查等。
List<>() a=new Arraylist<>(); 或者通過構(gòu)造參數(shù)的形式實現(xiàn)。
3、在現(xiàn)實開發(fā)當(dāng)中,課程等成員變量是私有化的,需要用get()和set()方法。
4、對象被存入集合都變成object類型了 取出時需要類型強轉(zhuǎn)。但在List<類型>()聲明了類型的就只能存入該類型的數(shù)據(jù),并且提取時也只會是該類型,不用強轉(zhuǎn)。
例:Course temp = (Course)coursesToSelect.get(0);//強轉(zhuǎn)
5、調(diào)用Add()方法添加到List中。有兩種方法:
a) 直接添加,例:CoursesToSelect.add(cr1);
b) 可以指定添加的位置,例:CoursesToSelect.add(0,cr1);
6、如果添加到List中的長度大于他目前的長度,則系統(tǒng)會出現(xiàn)異常,即數(shù)組下表越界異常
7、list中還有addAll(List list)
就是將一個List里面的元素一股腦的全都加進(jìn)去
一般定義一個數(shù)組,如何把一個數(shù)組轉(zhuǎn)換成List? 調(diào)用方法Arrays.asList(Object[] obs);//可以將一個數(shù)組轉(zhuǎn)換為一個List,然后可以將這個元素傳進(jìn)addAll()里面
當(dāng)然還有addAll(index,List list)方法
8、迭代器只是用來遍歷集合中的元素,本身不具備任何存儲元素的功能,換而言之,迭代器是依賴于某個集合而存在的,本身不能獨立存在。
讀取元素三種方法:
a)for()
b)Iterator是一個接口,依賴于集合存在的
Iterator it=courseToSelect.iterator();
while(it.hasNext()){} //迭代
c)foreach
9、使用set(index,Object element)修改元素,index表示索引位置,element表示新對象。查看全部 -
1、集合類與數(shù)組的比較:
????1.1 數(shù)組的長度是固定的,但是集合的長度是在運行過程中可以動態(tài)修改的;
????1.2 數(shù)組只能通過下標(biāo)進(jìn)行元素查找,但是部分集合提供了映射關(guān)系,可以通過關(guān)鍵字快速查找集合中的元素
查看全部 -
Math.floor()和Math.cell() 雖然返回的是整數(shù),但是返回值類型為double;
因為:
Java math.ceil或者Java math.floor()代表取最小或最大整數(shù),這個值很有可能會超過整數(shù)范圍,所以得用double來表示。
Double.MaxValue = 1.7976931348623157E+308
Integer.MaxValue = 2,147,483,647
查看全部 -
如果想要取得(0,XX]之間的隨機(jī)浮點數(shù),只需要使用:
double a = Math.random()*XX;
由于Math.random()返回的值為浮點數(shù),如果想要返回(0,XX]之間的隨機(jī)整數(shù),只需要將返回值強制類型轉(zhuǎn)換即可:
int b? = (int) ( Math.random()*XX );
查看全部 -
多種catch塊捕獲多種異常
finally放一些最終執(zhí)行的代碼
查看全部 -
Throwable
Error Exception
查看全部 -
筆記查看全部
-
字符為基本數(shù)據(jù)類型
只能用==來進(jìn)行比較
查看全部 -
我們以 Integer 包裝類為例,來看下包裝類的特性。
Integer 包裝類的構(gòu)造方法:
如下代碼所示:
Integer包裝類的常用方法:
查看全部 -
// 從后往前每隔三位插入逗號
for (int i = str.length(); i > 0; i-=3) {
? ? ? ? ? ? str.insert(i,",");
? ? ? ? }
查看全部 -
StringBuffer 是線程安全的,而 StringBuilder 則沒有實現(xiàn)線程安全功能,所以性能略高。因此一般情況下,如果需要創(chuàng)建一個內(nèi)容可變的字符串對象,應(yīng)優(yōu)先考慮使用 StringBuilder 類。
查看全部 -
charAt(index)獲取字符串S的對應(yīng)索引位置的字符
查看全部
舉報