String常用方法
返回类型 方法名 作用 String toUpperCase() 将一个字符串全部转换成大写 String toLowerCase() 将一个字符串全部转换成小写 String replace(String,String) 将某个内容全部替换成指定内容 String replaceAll(String,String) 将某个内容全部替换成指定内容,支持正则 String repalceFirst(String,String) 将第一次出现的某个内容替换成指定的内容 String substring(int) 从指定下标开始一直截取到字符串的最后 String substring(int,int) 从下标x截取到下标y-1对应的元素 String trim() 去除一个字符串的前后空格
char charAt(int) 得到指定下标位置对应的字符 int indexOf(String) 得到指定内容第一次出现的下标 int lastIndexOf(String) 得到指定内容最后一次出现的下标
String.split(reg,limit)
- limit参数不写默认为0
该参数用于控制匹配的次数. public String[] split(String regex)为limit为0的情况.
limit > 0 : 最多匹配limit-1次,得到一个长度为limit的数组. String[limit-1]为余下未匹配的字符串
limit = 0 : 尽可能的多匹配, 且长度无限制, 但结尾空字符串将被丢弃
limit < 0 : 尽可能的多匹配, 且长度无限制
统计字符串中某字符串出现次数
String str = "吃葡萄不吐葡萄皮,不吃葡萄倒吐皮葡萄";
//请用四种方法统计 葡萄 出现的次数
//第一种
/*String str1 = str.replace("葡萄"," ");
char[] data = str1.toCharArray();
int count = 0;
for(char a : data){
if(a == ' '){
count++;
}
}
System.out.println(count);*/
------------------------------
//第二种
/*int count = 0;
int x = 0;
while(x != -1){
x = str.indexOf("葡萄");
if(x != -1){
count++;
str = str.replaceFirst("葡萄","");
}
}
System.out.println(count);*/
----------------------------------
//第三种
/* for(int x = 0; x < str.length() ; x++){
if(str.contains("葡萄")){
str = str.replaceFirst("葡萄","");
}else{
System.out.println(x);
break;
}
}*/
---------------------------------
/* //第四种 分割n次会将字符串分割成n+1份
String[] data = str.split("葡萄");
log.info(Arrays.toString(data));
log.info("str:"+str);
if(!str.endsWith("葡萄")){ //这里startsWith("葡萄")在split时,会在开头产生空串
System.out.println(data.length -1);
}else{
System.out.println(data.length);
}*/
//第五种
-------------------------------
/*int count = 0;
int x = 0;
while(x != -1){
x = str.indexOf("葡萄");
if(x != -1){
if((x+2) < str.length()){
str = str.substring(x+2);
}
count++;
}
}
System.out.println(count);*/
//第六种
----------------------------
/*String str2 = str.replace("葡萄","");
System.out.println((str.length() - str2.length())/2);*/
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了