本文实例讲述了java计算给定字符串中出现次数最多的字母和该字母出现次数的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
import Java.util.Collections; import java.util.Map; import java.util.TreeMap; public class TestStringSplict { public static void main(String[] args){ String str = "aaaaaaaccccccccccccccccccccccaaaabb" ; // 用map实现 // TreeMap<Character,Integer> map = new TreeMap<Character,Integer>(); // for(Character ch : str.toCharArray()){ // if((ch>='a' && ch<'z')||(ch>'A' && ch<'Z')){ // Integer count = map.get(ch); // map.put(ch, null==count?1:count+1); // } // } // // System.out.println(Collections.max(map.values())); //用普通数组实现 int [] aa = new int [ 60 ]; for ( char temp:str.toCharArray()){ if ((temp>= 65 && temp<= 90 )||(temp>= 97 && temp<= 122 )){ temp -= 65 ; aa[temp]++; } } int max = aa[ 0 ]; int position = 0 ; for ( int i= 0 ;i<aa.length;i++){ if (aa[i]>max){ max = aa[i]; position = i; } } System.out.println(max); System.out.println( "字母" +( char )(position+ 65 ) + "出现" + max + "次" ); } } |
希望本文所述对大家java程序设计有所帮助。