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

有没有人在啊,想请问一下,如何用java String 查找字符个数?
最新回答
本人已死,有事烧纸

2024-07-28 19:49:43

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);
    }
}


楼主算是问对人了

  马上给答案


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


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

追问
谢谢
还有比如xixixixi
查找有多少个x应该怎么编代码呢
追答
有个很简单方法 
int count=0;
int i=string.fisrtIndexOf("x");
if(i!=0) count=1;

for(int j=0; j<string.length;j++){
if(string.IndexOf("x",i+1) )
count++;
}

大概思想是这样,我先上课去了!!!
骑猪赏月看嫦娥

2024-07-28 07:45:26

   java String中可以使用如下方法获得字符个数:

public static void test(String str){
      Map map = new HashMap();
      for(int i = 0; i < str.length(); i++){
       String ch = str.charAt(i) + "";
       Object och = map.get(ch);
       if(och == null){
        map.put(ch, new Integer(1));
       }else{
        map.put(ch, new Integer(((Integer)och).intValue()+ 1));
       }
      }
      Iterator it = map.keySet().iterator();
      System.out.println("
字符串
的总数是:" + str.length());
      System.out.println("/的数量是 " + map.get("/"));
      while(it.hasNext()){
    //  String key = (String)it.next();
       System.out.println("字母 " + key + " 的数量是 " + map.get("/"));
      }
    }
星空伪装的忧蓝

2024-07-28 10:13:40

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);
    }
}
熊宝宝

2024-07-28 20:37:50

转化成字符数组,char[] c=str.tocharArray();输出c.length即可
蘇瑾熙

2024-07-28 05:54:03

用正则最好!