首页 > 代码库 > 《Java编程那点事儿》读书笔记(四)
《Java编程那点事儿》读书笔记(四)
String
1.toString:显示对象内容时系统自动调用的方法。
public class TOSTRING { public String toString(){ return "this is toString method"; }}
TOSTRING t = new TOSTRING();System.out.println(t);
2.Math
Math.函数
3.String
1)char charAt(int n) //获得字符串索引为1的字符
String a = "abc";char b = a.charAt(1); //b的值为‘b‘
2)int compareTo(String s)
String s = "abc";String ss = "abd";System.out.println(s.compareTo(ss));
比较两个字符串的大小,相等输出0;如果s小于ss,输出-1;如果s大于ss,输出1。
尝试了一下,比较"abc"和"ABC",输出的是32,不知道是什么=。=,如果要忽略大小写比较字符串的话可以用下面的compareToIgnoreCase(String s)函数
3)int compareToIgnoreCase(String s)
String s = "abc";String ss = "BCD";System.out.println("test compareTo");System.out.println(s.compareToIgnoreCase(ss));
4)boolean endsWith(String s)
判断字符串是否以s结尾,如果是,返回true
String a = "student.doc";boolean b = s.endsWith("doc");
5)equals
判断两个字符串对象内容是否相同。如果用“==”比较的是两个字符串在内存存储的地址是否一样。另外一个类似的方法是equalsIgnoreCase(s1);
6)int indexOf(String s,[int i])
查找s在字符串中的索引,找不到返回-1。如果加上参数i表示忽略前i个字符,直接从i+1处找s。对应的还是方法lastIndexOf
String s = "abc";int index = s.indexOf(‘d‘); //返回-1index = s.indexOf(‘b‘,2); //返回-1index = s.lastIndexOf(‘b‘); //返回1
7)length方法:返回字符串的长度
8)replace方法:替换字符串中所有指定的字符,然后生成一个新的字符串。
replaceAll方法:替换某个制定的字符串——s.replaceAll("ba","12");
replaceFirst方法:替换s中第一次出现的制定字符串
9)split方法:以特定字符串作为间隔摘分字符串得到一个字符串数组
如果字符串内部存在和间隔字符串相同的内容时,将得到空字符串,例如abbcbtbb用b拆分得到{"a","","c","t"},结尾的空
字符串被忽略
10)String substring(int m):返回索引值m(包括)以后的所有字符作为子字符串
String substring(int m,int n):返回索引值m(包括)到n(不包括)之间的字符作为子字符串。
11)String trim():去掉字符串开始和结尾的空格。
12)valueOf:将其他类型的数据转换为字符串类型。static方法,不用创建String类型的对象。下面是一个判断自然数位数的程序
int n = 12345;string s = String.valueOf(n);int len = s.length(); //len值为5
StringBuffer
StringBuffer处理字符串的时候不生成新的对象,直接在原来的字符串上面修改。
1)初始化
StringBuffer s = new StringBuffer();
2)和String之间的转化
String s = "abc";StringBuffer sb1 = new StringBuffer("123");StringBuffer sb2 = new StringBuffer(s); //String转StringBufferString s1 = sb1.toString(); //StringBuffer转String
3)append方法
StringBuffer sb = new StringBuffer();String user = "test";String pwd = "123";sb.append("select *from userInfo where username=") .append(user) .append("and pwd=") .append(pwd);
4)public StringBuffer deleteCharAt(int index)
public StringBuffer delete(int start,int end) //删除start(包含)到end(不包含)间的字符
5)public StringBuffer insert(int offset, String str)
查了一下第二个参数的取值还有很多,包括boolean,int等。
6)reverse
7)public void SetCharAt(int index,char ch);