- Author 杨叔
- 字符串常用方法
public class Test03 {
public static void main(String[] args) {
//1.返回指定索引处的char值 char.charAt(int index)
String s1="我是机器人";
char c1=s1.charAt(2);
System.out.println(c1);//机
//2.测试此字符串是否以指定的后缀结束 boolean endsWith(string endstr);
System.out.println("helloworld.java".endsWith("java"));//true
System.out.println("helloworld.java".endsWith(".java"));//true
System.out.println("helloworld.java".endsWith("helloworld.java"));//true
System.out.println("helloworld.java".endsWith("txt"));//false
//3.将此string与另一个string比较,不考虑大小写 boolean equalsIgnoreCase(string anotherString)
System.out.println("abc".equalsIgnoreCase("ABC"));//true
System.out.println("abc".equalsIgnoreCase("abc"));//true
//4.使用平台的默认字符集将此string编码为byte序列,并将结果存储到一个新的byte数组中 byte[] getBytes();
byte[] bytes ="abc".getBytes();
for (int i=0;i<bytes.length;i++){
System.out.println(bytes[i]);//97,98,99
//5.返回指定子字符串在此字符串中第一次出现处的索引 int indexOf(string str)
System.out.println("http://192.168.1.100 8080/oa/login.action?username=jack&wd=123".indexOf("/oa"));//25
//6.返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始 int indexOf(string str,int fromindex)
System.out.println("javaoraclec++javavb".indexOf("java",1));//13
//7.返回指定子字符串在此字符串最右边出现处的索引 int lastIndexOf(String str)
System.out.println("javaoraclec++javavb".lastIndexOf("java"));//13
//8.返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索 int lastIndexOf (string str,int fromindex)
System.out.println("javaoraclec++javavb".lastIndexOf("java",14));//13
//9.返回此字符串的长度 int length()
System.out.println("abc".length());//3
//10.测试此字符串是否以指定的前缀开始 boolean startsWith(string prefix)
//判断“/system.out”是否以斜线开始
//如果字符串以指定的前缀开始,则返回 true;否则返回 false。
System.out.println("/system.out".startsWith("/"));//true
//11.返回字符串的子字符串。String substring(int beginIndex)
//从指定处开始截取字符串
System.out.println("http://192.168.1.100 8080/oa/login.action?username=jack&wd=123".substring(3));//p://192.168.1.100 8080/oa/login.action?username=jack&wd=123
//12.返回字符串的子字符串。String substring(int beginIndex, int endIndex)
//从指定处开始截取字符串直到指定处结束
/*参数
beginIndex -- 起始索引(包括)。
endIndex -- 结束索引(不包括)。
*/
System.out.println("http://192.168.1.100 8080/oa/login.action?username=jack&wd=123".substring(3,10));//p://192
//13.将字符串转换为字符数组。char[] toCharArray()
char [] c2="我是李刚".toCharArray();
//遍历
for (int s=0;s<c2.length;s++){
System.out.println(c2[s]);
/*
我
是
李
刚
*/
}
//14.将字符串小写字符转换为大写 String toUpperCase()
System.out.println("http://192.168.1.100 8080/oa/login.action?username=jack&wd=123".toUpperCase());//HTTP://192.168.1.100 8080/OA/LOGIN.ACTION?USERNAME=JACK&WD=123
//15.将字符串转换为小写 String toLowerCase()
System.out.println("HTTP://192.168.1.100 8080/OA/LOGIN.ACTION?USERNAME=JACK&WD=123".toLowerCase());//http://192.168.1.100 8080/oa/login.action?username=jack&wd=123
//16.删除字符串的头尾空白符
//只能去除头尾的空白,中间的不能去除
System.out.println(" system. out ".trim());//system. out
//17.static valueOf()
/*
static valueOf(boolean b): 返回 boolean 参数的字符串表示形式。
static valueOf(char c): 返回 char 参数的字符串表示形式。
static valueOf(char[] data): 返回 char 数组参数的字符串表示形式。
static valueOf(char[] data, int offset, int count): 返回 char 数组参数的特定子数组的字符串表示形式。
static valueOf(double d): 返回 double 参数的字符串表示形式。
static valueOf(float f): 返回 float 参数的字符串表示形式。
static valueOf(int i): 返回 int 参数的字符串表示形式。
static valueOf(long l): 返回 long 参数的字符串表示形式。
static valueOf(Object obj): 返回 Object 参数的字符串表示形式。
*/
//需要注意:
Object o=null;
System.out.println(o.toString());//此处会报空指针异常:java.lang.NullPointerExceptionatTest03.main(Test03.java:89)
System.out.println(o);//这里则不会,因为并不是直接调用tostring方法,String.valueOf(o)对空值进行了处理,等同于以下代码:
System.out.println(String.valueOf(o));
}
}
}
其中有部分方法未讲到,因为涉及到正则表达式,后续再讲!