Java-String字符串的常见方法总结

常用方法

1.charAt(int index)方法和tocharArray()方法

charAt(int index)方法:括号里传入整型参数,可以获取到该下标位置的String数组内容,通常用于遍历字符串。

tocharArray()方法:将字符串转化为char类型,再存入char类型数组,可用于遍历字符串

java 复制代码
public class demo02 {
	public static void main(String[] args) {
		String s1="阴天傍晚车窗外"; 
		for(int i=0;i<s1.length();i++) {
			char c=s1.charAt(i);
			System.out.println(c);
		}
		char[] array=s1.toCharArray();
		for(int i=0;i<array.length;i++) {
			char c=array[i];
			System.out.println(c);
		}
	}
}

2.toString()方法

toString()方法:用于将对象转换为字符串类型返回字符串本身,返回值为String类型

java 复制代码
        String uuid=UUID.randomUUID().toString();
		System.out.println(uuid);
		//运行结果:a5118571-ab76-4976-a62e-23c8dda0b882

3.length()方法

length()方法:用于返回字符串的长度,即char字符数量,返回int型数值

java 复制代码
public class demo11 {
	public static void main(String[] args) {
		String str=new String("Happy new year");
		System.out.println(str.length());
	}
}

4.comparaTo(String anthorString) 方法

comparaTo(String anthorString) 方法:用于比较两个参数对象的大小关系,返回值为int类型

java 复制代码
public class demo03 {
	public static void main(String[] args) {
		String s1="abdf";
		String s2="abf";
		System.out.println(s1.compareTo(s2));
	}	
}

5.indexOf()方法

注意:若查找不到,则返回-1

|--------------------------------------|-----------------------------------|
| 方法声明 | 功能介绍 |
| indexOf(int ch) | 用于查找当前参数ch指定的字符在字符串中第一次出现的下标位置 |
| indexOf(int ch,int fromindex) | 用于从fromindex位置开始查找ch指定的字符在字符串中的位置 |
| indexOf(String str) | 用于查找str在字符串中第一次出现的位置 |
| indexOf(String str,String fromindex) | 用于从字符串的fromindex位置查找str第一次出现的下标位置 |

java 复制代码
        String s="唧唧复唧唧木兰当户织";
		String target="当户织";
        //indexOf(int ch)方法:从原字符串中返回目标字符第一次出现的下标
		int index2=s.indexOf("复");
		System.out.println(index2);
        //indexOf(int ch,int fromindex)用于返回从fromindex位置开始查找ch指定的字符在字符串中的位置
		int index4=s.indexOf("复",1);
		System.out.println(index4);        
        //indexOf(String ch)方法:从原字符串中查找目标字符串
		int index1=s.indexOf(target);
		System.out.println(index1);	
		//indexOf(String str,int fromindex)用于从fromindex位置开始查找ch指定的字符在字符串中的位置
		int index3=s.indexOf(target,1);
		System.out.println(index3);
		

6.lastindexOf()方法

注意:若查找不到,则返回-1

|--------------------------------------|----------------------------------------|
| 方法声明 | 功能介绍 |
| lastindexOf(int ch) | 用于返回当前参数ch指定的字符在字符串中最后一次出现的下标位置 |
| lastindexOf(int ch,int fromindex) | 用于从fromindex位置开始反向查找ch指定的字符在字符串中的下标位置, |
| lastindexOf(String ch) | 用于返回str在字符串中最后一次出现的位置 |
| lastindexOf(String ch,int fromindex) | 用于从字符串的fromindex位置反向查找str第一次出现的下标位置 |

java 复制代码
	    String s="唧唧复唧唧木兰当户织";
		String target="当户织";  
        //lastindexOf(int ch)方法:从原字符串中查找目标字符,返回最后一次出现的位置
		int index5=s.lastIndexOf("复");
		System.out.println(index5);
		//lastindexOf(int ch,int fromindex)方法:从fromindex位置开始反向查找ch指定的字符在字符串中的下标位置
		int index6=s.lastIndexOf("复", 7);
		System.out.println(index6);
		//lastindexOf(String str)方法:从原字符串中查找目标字符串,返回最后一次出现的位置
		int index7=s.lastIndexOf(target);
		System.out.println(index7);
		//lastindexOf(String str,int fromindex)方法:从字符串的fromindex位置反向查找str第一次出现的下标位置
		int index8=s.lastIndexOf(target, 7);	
        System.out.println(index8);

7.endsWich()和startsWich()方法

endsWich()方法:判断原字符串是否以目标字符串结尾,返回值为boolean

startsWich()方法:判断原字符串是否以目标字符串开始,返回值为boolean

java 复制代码
        String s="唧唧复唧唧木兰当户织";
		String target="当户织";
        //endsWich()方法:判断原字符串是否以目标字符串结尾
		boolean isStars=s.endsWith(target);
		System.out.println(isStars);
		//startsWich()方法:判断原字符串是否以目标字符串开始
		boolean isStars1=s.startsWith(target);
		System.out.println(isStars1);

8.replace()方法

replace()方法:用于替换字符串

java 复制代码
        String ip="127.0.0.1";
 	    //将字符串中所有"."替换为"#"
 	    String ret=ip.replace('.', '#');
 	    //将字符串中所有"."替换为"[#]"
 	    String ret1=ip.replace(".", "[#]");
 	    System.out.println(ret);
 	    System.out.println(ret1);
 	    
 	    String s2="a,b,c,,d.x,e,r$$ie,i";
 	    //正则表达式
 	    String ret2=s2.replaceAll("[\\,\\.\\$]+", "#");
 	    String ret3=s2.replaceAll("[\\,\\.\\$]", "#");//replaceAll用正则表达式进行匹配
 	    System.out.println(ret2);
 	    System.out.println(ret3);

运行结果:

java 复制代码
127#0#0#1
127[#]0[#]0[#]1
a#b#c##d#x#e#r##ie#i
a#b#c#d#x#e#r#ie#i
java 复制代码
	public static void main(String[] args) {
		String uuid=UUID.randomUUID().toString();
		System.out.println(uuid);
		//替换字符串中所有的数字,在原有数字基础上+1
		StringBuilder sb=new StringBuilder(uuid);
		//遍历字符串
		for(int i=0;i<sb.length();i++) {
			//获取每个字符
			char c=sb.charAt(i);
			if(c>='0'&&c<='9') {
				int n=Integer.parseInt(String.valueOf(c));
				n=n+1>9?0:n+1;
				sb.replace(i,i+1,String.valueOf(n));
			}
		}
		System.out.println(sb);
	}

9.trim()方法

trim()方法:返回去掉前导和尾随空白的字符串,返回String类型

java 复制代码
        String s1=" abc\t\r\n";
	    s1=s1.trim();
 	    System.out.println(s1+s1.length());

10.split(String regex()方法:

split(String regex)方法:参数为正则表达式,以regex所表达的字符串为分隔符,返回一个String[]数组

java 复制代码
        String s3="北京a上海b广州k广东o新疆l南京n苏州b常州x乌鲁木齐";
 	    String[] ret4=s3.split("[a-z]");
 	    System.out.println(Arrays.toString(ret4));
 	    //运行结果:[北京, 上海, 广州, 广东, 新疆, 南京, 苏州, 常州, 乌鲁木齐]
 	    String s4="北京0上海3广州4广东2新疆6南京7苏州8常州9乌鲁木齐";
 	    String[] ret5=s4.split("[0-9]+");
	    System.out.println(Arrays.toString(ret5));
	    //运行结果:[北京, 上海, 广州, 广东, 新疆, 南京, 苏州, 常州, 乌鲁木齐]

11.join(String str,String[] arr)方法

join(String str,String[] arr)方法:用于将字符串str添加入数组分隔符的位置,返回一个String类型的字符串

java 复制代码
        String[] arr1= {"西安","北京","宝鸡","渭南","上海","汉中","铜川","延安"};
        String ret1=String.join("$", arr1);
        System.out.println(ret1);
        //运行结果:西安$北京$宝鸡$渭南$上海$汉中$铜川$延安
        String ret2=String.join("$", "西安","宝鸡","渭南","汉中");
        System.out.println(ret2);
        //运行结果:西安$宝鸡$渭南$汉中

12.String字符串的format()格式化拼接

java 复制代码
        //format格式化拼接
        String ret3=String.format("今天下午喝%s的%s咖啡就行价值%d元","王一","库迪",15);
        System.out.println(ret3);
        //运行结果:今天下午喝王一博的库迪咖啡就行价值15元

13.contains()方法

contains()方法:判断当前字符串是否包含参数指定的内容,返回值为boolean,若存在,则返回true,不存在返回false

java 复制代码
        String str=new String("Happy new year");
		System.out.println(str.contains("ne"));
		//运行结果:true

14.subString()方法

subString()方法:用于截取字符串

|----------------------------------------|-------------------------------------------|
| 方法声明 | 功能介绍 |
| subString(int beginindex,int endindex) | 返回字符串从beginindex(包括)开始到endindex(不包括)的子字符串 |
| subString(int beginindex) | 返回字符串从beginindex(包括)开始到结束的子字符串 |

java 复制代码
        String str=new String("Happy new year");
		System.out.println(str.substring(6));
		//运行结果:new year
		System.out.println(str.substring(0, 5));
		//运行结果:Happy

15.toUpperCase()和toLowerCase()方法

toUpperCase()方法:用于将字符串转换为大写,返回String类型的值

toLowerCase()方法:用于将字符串转换为小写,返回String类型的值

java 复制代码
public class demo11 {
	public static void main(String[] args) {
		String str=new String("Happy new year");
		System.out.println(str.toLowerCase());//转换为小写
		//运行结果:happy new year
		String str1=new String("happy new year");
		System.out.println(str1.toUpperCase());//转换为大写
		//运行结果:HAPPY NEW YEAR
	}
}

16.equals()方法

equals()方法:用于比较字符串内容是否相等,返回值为boolean类型,若相等返回true,不相等返回false

java 复制代码
        String str=new String("Happy new year");
		String str2=new String("Happy");
		System.out.println(str.equals(str2));//返回false
相关推荐
Aaa111114432 分钟前
四类地址 逻辑地址 线性地址 虚拟地址 物理地址
java
小则又沐风a2 分钟前
深入了解进程概念 第二章
java·linux·服务器·前端
沐知全栈开发4 分钟前
AngularJS 简介
开发语言
程序猿进阶5 分钟前
OpenClaw Mac 安装教程
java·macos·ai·架构·agent·openclaw
骑士雄师12 分钟前
学生管理系统python版本比对
开发语言·python
basketball61613 分钟前
C++ 的 const 相关知识点总结
开发语言·c++
凯瑟琳.奥古斯特18 分钟前
信号分类与特性解析
java·开发语言·职场和发展
JAVA面经实录91722 分钟前
JVM 性能监控 + 全链路分析实战 + 性能优化(完整版)
java·jvm
WL_Aurora27 分钟前
Python 算法基础篇之查找算法(一):顺序查找、二分查找与插值查找
开发语言·python·算法
号码认证服务28 分钟前
小米、OPPO、VIVO手机支持号码认证显示公司名吗?
java·服务器·网络·经验分享·智能手机·云计算·php