当前位置:首页 » 编程语言 » java字符串个数统计

java字符串个数统计

发布时间: 2025-01-11 22:45:05

java 判断一行字符串中某个字串出现的次数要用哪种方法

确实可以通过使用indexOf(String str)方法来判断一行字符串中某个子字符串出现的次数。首先,使用indexOf(String str)找到目标子字符串第一次出现的位置。然后,通过截取该位置之前的字符串,再次调用indexOf(String str)查找目标子字符串的下一个位置。如此反复,直到indexOf(String str)返回-1为止。每次找到目标子字符串的位置后,增加一个计数器i,最终计数器的值即为目标子字符串在原字符串中的出现次数。

例如,假设我们有一个字符串“hello world, hello everyone”,我们想计算“hello”出现的次数。我们首先调用indexOf("hello"),它会返回0。然后我们截取从0开始到字符串结束的部分,即“world, hello everyone”,再次调用indexOf("hello"),它会返回7。我们继续这个过程,直到indexOf("hello")返回-1。在这个例子中,我们调用了两次indexOf()方法,因此“hello”出现了两次。

值得注意的是,这种方法仅能准确地统计连续出现的子字符串的次数。如果目标子字符串内部包含空格或其他字符,这种方法将无法正确统计所有出现的情况。为了提高准确性,可以考虑使用正则表达式或其他更复杂的方法来处理这种情况。

此外,如果字符串中包含多个目标子字符串,且子字符串之间没有固定分隔符,这种方法可能不适用。在这种情况下,可以考虑使用其他方法,如split()方法,将其转换为一个字符串数组,然后遍历数组统计目标子字符串的出现次数。

总之,使用indexOf(String str)方法来统计子字符串出现次数是一种简单有效的方法,但在处理复杂字符串时可能需要结合其他方法共同使用。

㈡ 如何用java String 查找字符个数

import java.util.Scanner;
public class test3 {
public static void main(String [] args){
System.out.print("inuput : ");
Scanner input=new Scanner(System.in);
int [] digit =new int[256];
String inputString = input.next();
//为了避免在输入的时候错误的键入了空格和table,进行一下处理
//以空格为分隔符分割字符串
String [] strings=inputString.split(" ");
String inputString1="";
//将分割后的字符串重新连接起来
for(String str : strings){
inputString1+=str;
}
//以table为分隔符分割字符串
strings=inputString.split(" ");
//将分割后的字符串重新连接起来
String inputString2="";
for(String str : strings){
inputString2+=str;
}
String returnString="";
for (int i = 0; i < inputString2.length(); i++) {
digit[inputString.charAt(i)-'!']++;
//将重复的字符输出,这里为什么是2呢有人会问重复次数也可以大于2啊?
//是因为大于2的在2的时候已经被输出,为了避免重复次数大于2的字符被重复输出,所以这里只能是2
if(digit[inputString.charAt(i)-'!']==2){
returnString+=inputString.charAt(i);
}
}
System.out.print(returnString);
}
}


楼主算是问对人了

马上给答案


楼主虽然我这个最终目的不是统计每个字符的个数,但是代码里面已经实现了这个功能,只要稍作修改就可以,我的主要功能是输出重复的字符!


希望我给的代码楼主还满意

㈢ 编写java程序统计字符个数。

public static void main(String[] args) {
// TODO Auto-generated method stub
int abcCount=0;//英文字母个数
int spaceCount=0;//空格键个数
int numCount=0;//数字个数
int otherCount=0;//其他字符个数
Scanner scan=new Scanner(System.in);
String str=scan.nextLine();
char[] ch = str.toCharArray();
for(int i=0;i<ch.length;i++){
if(Character.isLetter(ch[i])){
//判断是否字母
abcCount++;
}
else if(Character.isDigit(ch[i])){
//判断是否数字
numCount++;
}
else if(Character.isSpaceChar(ch[i])){
//判断是否空格键
spaceCount++;
}
else{
//以上都不是则认为是其他字符
otherCount++;
}
}
System.out.println("字母个数:"+abcCount);
System.out.println("数字个数:"+numCount);
System.out.println("空格个数:"+spaceCount);
System.out.println("其他字符个数:"+otherCount);

㈣ java中怎么统计一个字符串中每个字符的出现次数

操作如下:

String str ="2342asfghgyu56asdasda";Map<String,Integer> maps = new HashMap<String,Integer>();for(int i=0;i<str.length();i++){。

String key = String.valueOf((str.charAt(i)));if(!maps.containsKey(key)),maps.put(key, 1);else{int val =maps.get(key);maps.put(key, val+1);

for(Map.Entry i : maps.entrySet()){System.out.println(i.getKey()+ "=="+i.getValue());

热点内容
怎样禁止空间访问 发布:2025-01-12 00:32:44 浏览:836
rms加密 发布:2025-01-12 00:32:07 浏览:531
python写抢票程序 发布:2025-01-12 00:25:07 浏览:981
360浏览器打开ftp 发布:2025-01-12 00:24:15 浏览:787
苹果和安卓哪个适合拍摄短视频 发布:2025-01-12 00:20:48 浏览:687
手机查询文件夹 发布:2025-01-12 00:16:51 浏览:131
二手安卓和新手机哪个值得买 发布:2025-01-12 00:12:38 浏览:123
多台云服务器怎样用一个ip 发布:2025-01-11 23:59:44 浏览:251
办公服务器什么系统好 发布:2025-01-11 23:50:06 浏览:350
boat服务器怎么开 发布:2025-01-11 23:48:57 浏览:490