筆記
31、由封裝對象轉換為基礎資料型別 (Elementary Data Type):obj.XXXValue();obj為封裝類的對象,XXX為該封裝對象所表示的
基礎資料型別 (Elementary Data Type)。
32、由字串轉換為基礎資料型別 (Elementary Data Type):obj.parseXXX(String str);obj是封裝類的對象,XXX為該封裝對象
所表示的基礎資料型別 (Elementary Data Type)。
33、由字串轉換為封裝對象:obj.valueOf(String str)。
34、由封裝對象轉換為字串:obj.toString()。
35、由基礎資料型別 (Elementary Data Type)轉換為字串:obj.toString(XXX value)。
36、不等於:!=
37、運算子instanceof,如v1 instanceof v2。檢查對象v1是否為class v2的一個執行個體。
38、邏輯運算子兩邊的式子需屬於boolean。與C++不同,C++中,0之外的整數都視為true。
39、位(Bitwise)邏輯運算子: & ,v1 & v2。位AND,若相對位都為1,則1,否則0
| ,v1 | v2。位OR,若相對位都為0,則0,否則1
^ ,v1 ^ v2。位XOR,若相對的位有相同值,則0,否則1
~ ,~v1。v1的補碼,1變成0,0變成1。
v1和v2需屬於整數類型。
40、Java不支援操作重載,也不支援C++的::和>>以及<<運算子。
41、常量的指定:static final int NUM =1。
42、數組定義:int num []; or int [] num; num=new int [15]; or int [] num=new num[15]; or int
num[]={1,2,3,4,5};
43、若二維數組的第2維的長度不同,由於陣列變數本身是參考類型,可將第1維指向另一個數組。
44、複製數組:void arraycopy(Object src,int srcPosition,Object dest,int destPosition,int
length) or clone() for example int [] newA=(int [])A.clone();
45、Arrays類提供的一些數組運算,如排序和搜尋
static void sort(dataType[] data):將數組data內的元素由小到大排列(使用quicksort)
static void sort(dataType[] data,int fromIndex,int toIndex)
static int binarySearch(dataType[] data,dataType key):利用二進位搜尋的方式搜尋數組data
(必須事先排過序)內的元素key。若搜尋到,則返回key在data中的位置;若無法找到,傳回值為(-插
入點-1),插入點(insert point)為第一個大與所要搜尋元素值的索引。
static void fill(dataType[] data,dataType val):將數組內的各元素設定為val。
static void fill(dataType[] data,int fromIndex,int toIndex,dataType val)
46、在Java中,char數組及String類並不以'\0'為結尾。char數組並不等於String對象,數組是可變的,
但String對象是不變的。
47、將char數群組轉換成一個String對象。char[] data={'s','t','r','i','n','g'};String str=new
String(data);
48、length()得到一個字串的長度,而length可用來得到一個數組所含元素的數目。
49、由於Java的對象為參考型別,因此,string1==string2,只是比較變數string1和string2是否指向
同一個地址,並不會比較字串的內容。
50、int compareTo(String str):s1.compareTo(s2)。若s1和s2相等,則返回0;若s1>s2,則傳回值大於
0;若s1<s2,則傳回值小於0。
int compareToIngnoreCase(String str):s1.compareToIngoreCase(s2)。忽略大小寫。
boolean equals(Object obj):s1.equals(s2)。
boolean equalsIgnoreCase(String str):s1.equalsIgnoreCase(s2)。
51、搜尋和讀取部分字串的操作:
boolean startsWith(String str):檢查str是否在字串的最前面
boolean endsWith(String str)
int indexOf(char ch):得到ch第一次在字串中出現的位置,若無法找到則返回-1
int indexOf(String str)
int lastIndexOf(char ch):由後面開始搜尋,得到ch第一次在字串中出現的位置,若無法找到返
回-1
int lastIndexOf(String str)
String substring(int begin):產生一個新的字串,它包含原有字串位置begin至最末端的所有
字元
String substring(int begin,int end)
52、StringTokenizer(String str):使用預設的分界符來分析一個字串,它們分別為:'','\t','\n'
,'\r','\f'。
StringTokenizer(String str,String delimiter):使用所指定的delimiter來分析字串
53、StringBuffer類是用來產生字串緩衝區,這種字串稱為可變字串。StringBuffer對象的預設容
量是16個字元。
54、StringBuffer無法像String對象一樣直接將字串指定給StringBuffer對象,例如StringBuffer
myString3="this is worong"。必須使用new產生StringBuffer對象。
55、StringBuffer對象有容量和長度之分,容量是不變的,長度是可變的。長度小於等於容量,表示實際
儲存的字元數目。
56.int capacity():返回StringBuffer對象的容量。
int length():返回StringBuffer對象的長度。
StringBuffer append(dataType data):將data加入StringBuffer對象後面
StringBuffer insert(int offset,dataType data):將data插入到offset位置前
String toString():將StringBuffer對象轉換為String對象。
57、當儲存的字串長度超過其容量,容量會改為原來容量的兩倍加上2。預先指定足夠的容量效率較高
58、資料成員代表類內所聲明的變數,分為static(類變數)和non-static(執行個體變數)
59、類內的方法分為static(類方法)和non-static(執行個體方法)
60、每個對象都有一個屬於自己的執行個體變數和變數值,通過對象來存取執行個體變數。