笔记
31、由封装对象转换为基本数据类型:obj.XXXValue();obj为封装类的对象,XXX为该封装对象所表示的
基本数据类型。
32、由字符串转换为基本数据类型:obj.parseXXX(String str);obj是封装类的对象,XXX为该封装对象
所表示的基本数据类型。
33、由字符串转换为封装对象:obj.valueOf(String str)。
34、由封装对象转换为字符串:obj.toString()。
35、由基本数据类型转换为字符串: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、每个对象都有一个属于自己的实例变量和变量值,通过对象来存取实例变量。