1. char charAt(int index) 返回给定位置的字符
package string ;
public class CharAtDemo {
public static void main ( String [ ] args) {
String str = "helloWorld" ;
char str1 = str. charAt ( 5 ) ;
System . out. println ( "返回给定位置的字符为:" + str1) ;
String line = "上海自来水来自海上" ;
System . out. println ( "字符串一半的长度:line.length()/2 = " + line. length ( ) / 2 ) ;
for ( int i = 0 ; i < line. length ( ) / 2 ; i++ ) {
char c1 = line. charAt ( i) ;
char c2 = line. charAt ( line. length ( ) - 1 - i) ;
if ( c1 != c2) {
System . out. println ( "不相等的字:c1 = " + c1+ ", c2 = " + c2) ;
System . out. print ( "不" ) ;
break ;
}
}
System . out. println ( "是回文!" ) ;
}
}
2. int indexOf(String str) 返回给定字符串的位置
package string ;
public class IndexOfDemo {
public static void main ( String [ ] args) {
String str = "thinking in java" ;
int index = str. indexOf ( "in" ) ;
System . out. println ( index) ;
index = str. indexOf ( "in" , 3 ) ;
System . out. println ( index) ;
index = str. lastIndexOf ( "in" ) ;
System . out. println ( index) ;
}
}
3. int length() 返回字符串长度
package string ;
public class LengthDemo {
public static void main ( String [ ] args) {
String str = "你好java!" ;
System . out. println ( "length:" + str. length ( ) ) ;
String stoveNo = "1234567" ;
System . out. println ( "字符串炉号长度为:" + stoveNo. length ( ) ) ;
int index = 0 ;
char c = stoveNo. charAt ( index) ;
System . out. println ( "下标为 " + index+ " 的字符是:" + c) ;
}
}
4. boolean matches(String regex) 正则验证字符串格式
package string ;
public class MatchesDemo {
public static void main ( String [ ] args) {
String email = "fan_cq@tedu.cn" ;
String regex = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+" ;
boolean match = email. matches ( regex) ;
if ( match) {
System . out. println ( "是邮箱" ) ;
} else {
System . out. println ( "不是邮箱" ) ;
}
}
}
5. String[] split(String regex) 正则拆分字符串,以数组形式返回
package string ;
import java. util. Arrays ;
public class SplitDemo {
public static void main ( String [ ] args) {
String str = "..abc.def.ghi........" ;
String [ ] arr = str. split ( "\\." ) ;
System . out. println ( arr. length) ;
System . out. println ( Arrays . toString ( arr) ) ;
}
}
6. String replaceAll(String regex, String replacement)正则替换为给定内容
package string ;
public class ReplaceAllDemo {
public static void main ( String [ ] args) {
String str = "abc123def456ghi" ;
str = str. replaceAll ( "[0-9]+" , "#NUMBER#" ) ;
System . out. println ( str) ;
String regex = "(wqnmlgb|dsb|wrsndm|nc|cnm|mdzz|nmsl|djb)" ;
String message = "wrsndm!你个dsb,你怎么这么nc,你就一个djb!" ;
message = message. replaceAll ( regex, "***" ) ;
System . out. println ( message) ;
}
}
7. boolean startsWith(String prefix)是否以给定的内容开始或结束
package string ;
public class StartsWithDemo {
public static void main ( String [ ] args) {
String str = "www.tedu.cn" ;
boolean start = str. startsWith ( "www." ) ;
System . out. println ( "startsWith:" + start) ;
boolean ends = str. endsWith ( ".cn" ) ;
System . out. println ( "endsWith:" + ends) ;
}
}
8. toUpperCase() 和 toLowerCase()转换为全小写或全大写
package string ;
public class ToUpperCaseDemo {
public static void main ( String [ ] args) {
String str = "我爱Java!!" ;
System . out. println ( str) ;
String upper = str. toUpperCase ( ) ;
System . out. println ( upper) ;
String lower = str. toLowerCase ( ) ;
System . out. println ( lower) ;
}
}
9. String常量池
package string ;
public class StringDemo {
public static void main ( String [ ] args) {
String s1 = "123abc" ;
String s2 = "123abc" ;
System . out. println ( s1== s2) ;
String s3 = "123abc" ;
System . out. println ( s2== s3) ;
s1 = s1 + "!" ;
System . out. println ( "s1: " + s1) ;
System . out. println ( "s2: " + s2) ;
System . out. println ( s1== s2) ;
System . out. println ( s2== s3) ;
String s4 = new String ( "123abc" ) ;
System . out. println ( "s4: " + s4) ;
System . out. println ( s2== s4) ;
System . out. println ( s2. equals ( s4) ) ;
String s5 = "123" + "abc" ;
System . out. println ( "s5:" + s5) ;
System . out. println ( s2== s5) ;
String s = "123" ;
String s6 = s + "abc" ;
System . out. println ( "s6:" + s6) ;
System . out. println ( s2== s6) ;
}
}
10. String valueOf(double d)将其他类型转换为字符串
package string ;
public class ValueOfDemo {
public static void main ( String [ ] args) {
int a = 123 ;
double d = 123.123 ;
String s1 = String . valueOf ( a) ;
System . out. println ( "s1 = " + s1) ;
String s2 = String . valueOf ( d) ;
System . out. println ( "s2 = " + s2) ;
long l = Long . valueOf ( s1) . longValue ( ) ;
System . out. println ( l) ;
long number = 123456789 ;
String code = Long . toString ( number) ;
System . out. println ( code) ;
}
}
11. trim()
package string ;
public class TrimDemo {
public static void main ( String [ ] args) {
String str = " hello " ;
System . out. println ( str) ;
String trim = str. trim ( ) ;
System . out. println ( trim) ;
}
}
12. String substring(int beginIndex, int endIndex)截取字符串
package string ;
public class SubstringDemo {
public static void main ( String [ ] args) {
String host = "www.tedu.cn" ;
String name = host. substring ( 4 , 8 ) ;
System . out. println ( name) ;
name = host. substring ( 4 ) ;
System . out. println ( name) ;
String name1 = getHostName ( "http://www.tedu.com" ) ;
System . out. println ( name1) ;
String name2 = getHostName ( "doc.canglaoshi.org" ) ;
System . out. println ( name2) ;
String name3 = getHostName ( "www.tts.com.cn" ) ;
System . out. println ( name3) ;
}
public static String getHostName ( String address) {
int start = address. indexOf ( "." ) + 1 ;
int end = address. indexOf ( "." , start) ;
return address. substring ( start, end) ;
}
}