java.lang.String部分常用方法
join
- join会使用第一个字符拼接后续所有元素
public class Demo01 {
public static void main(String[] args) {
String s = String.join("+","1","2","3","4");
System.out.println(s);
}
}
//result : 1+2+3+4
substring
- substring提取指定字符串的一个子串
public class Demo02 {
public static void main(String[] args) {
String s = "Hello!";
System.out.println(s.substring(1,3));
System.out.println(s.substring(2));
}
}
/*result:
el
llo!
*/
equals & equalsIgnoreCase
- equals & equalsIgnoreCase用于判断两字符串是否相等
public class Demo03 {
public static void main(String[] args) {
// A.equals(B),判断A和B两个字符串是否相等
// A 和 B可以是字符串变量也可以是字符串常量
String s = "Hello";
"Hello".equals(s);//true
//equalsIgnoreCase可以忽视大小写判断两字符串是否相等
"HELLO".equalsIgnoreCase(s);//true
//在C当中使用strcmp来比较两个字符串,java中也有类似的方法---> compareTo
//返回值为0表示字符串相等
if(s.compareTo("Hello")==0){}
//不要使用“==”判断字符串是否相等
//“==”判断的是两个字符串的位置是否相等
s.equals(s.substring(2));//false
}
}
indexOf & lastIndexOf
public class Demo05 {
public static void main(String[] args) {
String s = "Hello";
//从左往右检索,返回字符或字符串在s中第一次出现的位置
System.out.println(s.indexOf("l"));//2
//从右往左检索,其余同上
System.out.println(s.lastIndexOf("l"));//3
}
}
toLowerCase & toUpperCase
public class Demo06 {
public static void main(String[] args) {
String s = "Hello";
//将字符串全转换成小写
System.out.println(s.toLowerCase());//"hello"
//将字符串全转换成大写
System.out.println(s.toUpperCase());//"HELLO"
}
}
unicode编码,代码单元,码点
- String.length String.codePointCount(int beginIndex,int endIndex)
public class Demo04 {
public static void main(String[] args) {
String s = "Hello\uD83C\uDF7A";
System.out.println(s);//Hello🍺
//返回字符串unicode编码的代码单元数量;
System.out.println(s.length());//7
//返回字符串unicode编码的码点数量;
//这才是正确的字符串长度
System.out.println(s.codePointCount(0,s.length()));//6
}
}
format
- 静态导入一个包,就可以直接使用其中的静态方法而不用“对象”+“.”的方式实现
import static java.lang.String.*;//静态导入String类中所有方法
public class Demo02 {
public static void main(String[] args) {
String s = "Hello";
String n;
n=format("%s,World",s);
System.out.println(n);//Hello,World;
}
}