新建一个java类LetterCount,要求如下
(1)随机生成100个小写字母(a-z)存入字符数组;
(2)统计输出100个字母中,各个字母出现的次数
实现思路供参考:
(1) 使用Math.random()*26+’a’ 随机生成字母,存入字符数组s;
(2) 对s进行遍历,存入集合map,如果key存在value+1,否则value=1;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import javax.swing.text.html.HTMLDocument.Iterator;
public class LetterCount {
public static char[] getRandomLetter() {//生成100个随机小写字母
char[] s = new char[100];
for (int i=0;i<100;i++) {
s[i]=(char)(Math.random()*26+'a');
}
return s;
}
public static void putRandomLetter(char s[]) { //
int[] value= new int[26]; //按顺序存放26个小写字母出现的次数
char[] c = new char[26]; //按顺序存放26个小写字母
Map map = new HashMap();
for (int j=0;j<26;j++) {
c[j]=(char)(j+97);
for (int i=0;i<100;i++) {
if (s[i]==(char)(j+97)) {value[j]++;}
}
map.put(c[j], value[j]);
System.out.println("key= "+c[j] + " value= " + map.get((char)(c[j])));
}
}
public static void main(String[] args) {
char [] s=getRandomLetter();
putRandomLetter(s);
}
}