一些常用的字符串方法
程序员文章站
2022-07-14 09:40:20
...
package String;
/*StringDemo*/
public class StringDemo {
public static void main(String[] args) {
// 使用+号进行字符串的拼接
// 字符串是常量,在内存中是不可变的,所以进行字符串拼接后是在栈内存中重新创建了一个新的字符串,再指向这个新的字符串
String str = "Hello" + "World";
str += 12345;
System.out.println(str);
// 使用java提供的concat方法进行拼接
String str1 = "abc";
str1 = str1.concat("de");
System.out.println(str1);
// 获取字符串的长度,字符串获取长度的.length()方法是:类的成员方法,而数组获取长度的.length方法是:数组的属性
// 空字符串无法调用.length()方法
System.out.println(str1.length());
// 获取指定的字符
String str2 = "我的名字是";
System.out.println(str2.indexOf("我"));// indexOf("的",0)这个0表示从哪个位置开始索引
System.out.println(str2.charAt(1));
// 判断字符串结尾的内容
String str3 = "Hello.java";
boolean bool = str3.endsWith(".java");// 判断字符串句首的内容用.startsWith
boolean bool1 = str3.endsWith(".jpg");
System.out.println(bool);
System.out.println(bool1);
// 获取字符串数组
String str4 = "我是一名大学生";
char[] c = str4.toCharArray();
for (char ch : c) {
System.out.print(ch + " ");
}
System.out.println();
// 判断子字符串是否存在
String str5 = "我今年22岁";
Boolean bool2 = str5.contains("今年");
System.out.println(bool2);
if (str5.indexOf("22岁") > -1) {// 使用indexOf方法来查找子串
System.out.println("22岁存在");
}
// 截取字符串
String str6 = "123456789";
System.out.println(str6.substring(1, 2));// 包括开始,不包括结束
// 字符串替换,这个方法支持正则表达式,功能十分强大,正则表达式非常的多,具体需要可以去网上查http://www.runoob.com/java/java-regular-expressions.html
/*
* 常用的正则表达式: \d:[0-9]:数字 \D:[^0-9]:非数字 \w:[A-Za-z0-9]:字类字符 \W:[^A-Za-z0-9]:非单词字符
*/
String str7 = "我目前在读大三";
System.out.println(str7.replaceAll("三", "四"));
// 字符串分割
String str8 = "[email protected]";
String[] strr = str8.split("@");
for (String i : strr) {
System.out.println(i);
}
// 字符串大小写转换
System.out.println(str8.toUpperCase());// 转换成小写就用.toLowerCase()
// 去除空白
String str9 = " a b c ";
System.out.println("[" + str9.trim() + "]");// .trim去除首尾空格
System.out.println("[" + str9.replaceAll(" ", "") + "]");// 这2种方法都可以去除所有的空格
System.out.println("[" + str9.replaceAll("\\s", "") + "]");
// 比较字符串是否相等,这个具体还有个十分有意思的东西,我将单独写一篇博客
String a = "abc", b = "def", d = "abc";
System.out.println("a和b相等吗?" + a.equals(b));
System.out.println("a和c相等吗?" + a.equals(d));
}
}
上一篇: 字符串,列表和元组的一些常用函数
下一篇: 一些常用的字符串方法