获取字符串中相同字符个数的方法

今天掌握了获取一个字符串中,相同字符个数的方法;

主要思路是把字符串存入一个字节数组,然后通过两层for循环嵌套,两两比较,在外层放一个count清零,内层count计数;为了记住这个算法,我把方法敲了两遍,彻底理解~

 

  1. public class ListTest01 {  
  2.       
  3.     public static void getStr(){  
  4.         String str = "abcdabcd";  
  5.         // 把字符串转为byte 字节数组  
  6.         byte[] bt = str.getBytes();  
  7.         for (int i = 0; i < bt.length; i++) {  
  8.             int count = 0;  
  9.             // 定义一个变量保存字符出现的次数  
  10.             for (int j = 0; j < bt.length; j++) {  
  11.                 // 内外循环进行比对,如果出现相同的字符,count+1  
  12.                 if(bt[i] == bt[j]){                   
  13.                     count++;  
  14.                 }  
  15.             }//把 byte的 ASCUU 转为char类型  
  16.             char c = (char)bt[i];  
  17.             // 在内循环结束后输出,这样外循环开始时,count清零   
  18.             System.out.println(c+"有"+count+"个");  
  19.         }  
  20.     }  
  21.     public static void strCatch(){  
  22.         String st = "asdwersdfshfd";  
  23.         byte[] bt = st.getBytes();  
  24.         for (int i = 0; i < bt.length; i++) {  
  25.             int count = 0;  
  26.             for (int j = 0; j < bt.length; j++) {  
  27.                 if(bt[i] == bt[j]){  
  28.                     count++;  
  29.                 }  
  30.             }  
  31.             char c = (char)bt[i];  
  32.             System.out.println(c+" 有 "+count+" 个");  
  33.         }  
  34.     }  
  35.     public static void main(String[] args) {  
  36.         //getStr();  
  37.         strCatch();  
  38.     }  
  39. }
原文地址:https://www.cnblogs.com/jackchiang/p/4585177.html