一、String
1--:
"=="比较的是元素在栈中的地址。
equals()方法比较的是字符串的面值。
----比较过程:(可看源码)
1)地址
2)类型
3)面值
2--:构造器
(1)String是一个不可改变的字符序列;
(2)如果改变面值,将创建一个新的字符串;
(3)同一个字符串的面值不会创建;两次。
3--常用方法
1)String类型--->基本数据类型、包装类,int-->Integer,String XXX.parseXXX(String str),double-->Double,char-->Char。
2)基本数据类型、包装类--->String类型
String.valueOf(XXX),XXX是基本数据类型、包装类
3)String字符串-->字节数组byte[]
getBytes(String str)
4)String字符串--->字符数组char[]
char[] c = String字符串.toCharArray();
(1)char charAt(intindex)
(2)String concat(String str)
(3)booleancontains(CharSequence s)
(4)booleanendWith(String suffix)
(5)booleanequals(Object anObject)
(6)int indexOf(intch);int indexOf(int ch,intfromIndex);intindexOf(String str);
(7)booleanisEmpty()
(8)intlength()
(9)String replace(char oldChar, charnewChar);
String replace(CharSequence target, CharSequence replacement);
String replaceAll(String regex, String replacement);
(10)String[] split(String regex)
(11)String substring(intbeginIndex);
String substring(int beginIndex, intendIndex)
(12)String toString()
(13)char[] toCharArray()
(14)String trim()
(15)static String valueOf(Object obj)
字符串常用方法
二、StringBuffer
特性:线程安全,可变的字符序列;
(1)添加:append(object obj),将基本数据类型或包装类型的obj,追加到StringBuffer后。
(2)删除:delete(int start,int end),从start开始至end结束之间的字符。
(3)修改:setCharAt(int index,char ch),修改index索引下的字符为ch。
(4)查找:indexOf(String str),查找str的位置。
(5)翻转:reverse(),将当前的字符串按位翻转后,返回一个新的StringBuffer。
(6)插入:insert(int offset,Object obj),在offset位置上插入一个(基本数据类型)obj值。
(7)长度:length()。
三、StringBuilder
特性:线程不安全,可变的字符序列;
(1) 通过比较后得知,在线程不安全的前提下,StringBuilder的效率高于StringBuffer,远远高于String
(2)StringBuffer与String相互转化
String--->StringBuffer
StringBuffer sb = new StringBuffer(String str);
StringBuffer--->String
StringBuffer sb = new StringBuffer();
sb.toString();
四、日期类
System.currentTimeMillis();
Date
Calendar
创建方式不同于其他Calendar
cal = Calendar.getInstance();
SimpleDateFormat
java.text.SimpleDateFormat
五、数学类
round()四舍五入,实现使用是floor();
六、运算类
BigInteger
BigDecimal
可以查看API文档,来查看使用方法。