(Java)统计随机产生的字母各自出现次数

原创 2013年12月02日 17:37:51

输出结果参考如下:

程序清单:

1、产生随机数

//产生随机数
public class RandomCharacter {
	public static char getRandomCharacter(char ch1,char ch2){
		return (char)(ch1+Math.random()*(ch2-ch1+1));
	}
	//产生随机小写字母
	public static char getRandomLowerCaseLetter(){
		return getRandomCharacter('a','z');
	}
	//产生随机大写字母
	public static char getRandomUpperCaseLetter(){
		return getRandomCharacter('A','Z');
	}
	//产生0-9之间随机数字
	public static char getRandomDigitCharacter(){
		return getRandomCharacter('0','9');
	}
	public static char getRandomCharacter(){
		return getRandomCharacter('\u0000','\uFFFF');
	}
}


2、随机生成100个小写字母,统计26个字母各自出现的次数

//随机生成100个小写字母,统计26个字母各自出现的次数
public class CountLettersInArray {

	public static void main(String[] args) {
		
		char[] chars=createArray();
		System.out.println("The lowercase letters are:");
		displayArray(chars);
		int[] counts=countLetters(chars);
		System.out.println();
		System.out.println("The occurences of each letter are:");
		displayCounts(counts);
		
	}
	public static char[] createArray(){//生成100个随机小写字母
		char[] chars=new char[100];
		for(int i=0;i<chars.length;i++)
			chars[i]=RandomCharacter.getRandomLowerCaseLetter();
		return chars;
	}
	public static void displayArray(char[] chars){//按一行20个显示字母
		for(int i=0;i<chars.length;i++){
			if((i+1)%20==0)
				System.out.println(chars[i]+" ");
			else System.out.print(chars[i]+" ");
		}
	}
	public static int[] countLetters(char[] chars){//返回每个字母对应出现的次数
		int[] count=new int[26];
		for(int i=0;i<chars.length;i++)
			count[chars[i]-'a']++;
		return count;
	}
	public static void displayCounts(int[] count){//显示26个字母及其对应出现次数,每行10个
		for(int i=0;i<count.length;i++)
			if(((i+1)%10==0))
				System.out.println(count[i]+"-"+(char)(i+'a')+" ");
			else System.out.print(count[i]+"-"+(char)(i+'a')+" ");
	}
}




相关文章推荐

java常用类解析十一:Random类(Math.random())生成指定范围的随机数或字符

package mine.util.others; import java.util.Random; public class GetRandom { // 返回ch1和ch2之间(包括ch1,...

Android 快速开发框架:推荐10个框架

一、  Afinal 官方介绍: Afinal是一个Android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,Final...

java统计字符串中字母出现的次数

看到一个面试题,突发奇想总结下统计字符串中字母出现次数的相关问题。 一、统计字符串中出现的字母及其出现次数 直接上代码 @Test public void test() { ...

画直方图统计各字母出现次数

  • 2014年11月26日 19:51
  • 986B
  • 下载

java Map练习-获取字符串中字母出现次数(TreeMap实现)

/* 练习: "kbashbdjsgfwhofihbfkwejhfiubjzfhaads"获取该字符串中的字母出现次数。 希望打印结果:a(3)b(4)d(2)... 通过结果发现,每一个字母都有...

Java Map集合获取字符串中的字母出现的次数

Java Map集合获取字符串中的字母出现的次数
  • hoho_12
  • hoho_12
  • 2016年04月22日 16:02
  • 1575

求字符串中出现次数做多的字母【java】

描述 现在给你一个由小写字母组成字符串,要你找出字符串中出现次数最多的字母,如果出现次数最多字母有多个那么输出最小的那个。 输入第一行输入一个正整数T(0 随后T行输入一个字符串...

java "aababcabcdabcde",获取字符串中每一个字母出现的次数

java "aababcabcdabcde",获取字符串中每一个字母出现的次数
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:(Java)统计随机产生的字母各自出现次数
举报原因:
原因补充:

(最多只允许输入30个字)