本文实例讲述了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程序设计有所帮助。