产生随机字符并进行计数
2015-04-09 17:24
253 查看
package array;
//import java.util.Scanner;
public class CountLetter {
public static void main(String[] args) {
// 统计每个字母出现的次数
char[] chars = creatArray();
System.out.println("The lowersletter is ");
displayArray(chars);
int[] counts = countchars(chars);
System.out.println();
System.out.println("The occurences of each letter are ");
displayCount(counts);
}
public static char[] creatArray()//创建一个数组
{
//Scanner input = new Scanner(System.in);
char[] chars = new char[100];
for(int i=0;i<100;i++)
chars[i] = getRandomLowerCaseLetter(); //调用函数产生随机字符
return chars;
}
public static void displayArray(char[] a)//打印出数组
{
for(int i=0;i<100;i++)
{
if((i+1)%20 ==0)//控制输出格式
System.out.println(a[i]);
else
System.out.print(a[i]+" ");
}
}
public static int[] countchars(char[] b)//进行计数
{
int[] counts = new int[26];
for(int i=0;i<b.length;i++)
{
counts[b[i]-'a']++;//巧妙运用字符的计算转换为ACSII值
}
return counts;//只用返回首地址即返回数组
}
public static void displayCount(int[] c)//打印出对应的数量
{
for(int i=0;i<c.length;i++)
{
if((i+1)%10==0)//控制格式
System.out.println(c[i]+" "+(char)(i+'a'));
else
System.out.print(c[i]+" "+(char)(i+'a')+" ");
}
}
public static char getRandomLowerCaseLetter()
{
return getRandomCharacter('a','z');
}
public static char getRandomCharacter(char a,char b)
{
return (char)(a+Math.random()*(b-a+1));//利用Math.random()产生随机数,然后进行强制转换变为字符
}
}
package array;
//import java.util.Scanner;
public class CountLetter {
public static void main(String[] args) {
// 统计每个字母出现的次数
char[] chars = creatArray();
System.out.println("The lowersletter is ");
displayArray(chars);
int[] counts = countchars(chars);
System.out.println();
System.out.println("The occurences of each letter are ");
displayCount(counts);
}
public static char[] creatArray()//创建一个数组
{
//Scanner input = new Scanner(System.in);
char[] chars = new char[100];
for(int i=0;i<100;i++)
chars[i] = getRandomLowerCaseLetter(); //调用函数产生随机字符
return chars;
}
public static void displayArray(char[] a)//打印出数组
{
for(int i=0;i<100;i++)
{
if((i+1)%20 ==0)//控制输出格式
System.out.println(a[i]);
else
System.out.print(a[i]+" ");
}
}
public static int[] countchars(char[] b)//进行计数
{
int[] counts = new int[26];
for(int i=0;i<b.length;i++)
{
counts[b[i]-'a']++;//巧妙运用字符的计算转换为ACSII值
}
return counts;//只用返回首地址即返回数组
}
public static void displayCount(int[] c)//打印出对应的数量
{
for(int i=0;i<c.length;i++)
{
if((i+1)%10==0)//控制格式
System.out.println(c[i]+" "+(char)(i+'a'));
else
System.out.print(c[i]+" "+(char)(i+'a')+" ");
}
}
public static char getRandomLowerCaseLetter()
{
return getRandomCharacter('a','z');
}
public static char getRandomCharacter(char a,char b)
{
return (char)(a+Math.random()*(b-a+1));//利用Math.random()产生随机数,然后进行强制转换变为字符
}
}
相关文章推荐
- Java产生任意范围内的随机字符,内部多种方法进行调用
- Java学习笔记_2_产生随机数或随机字符
- Java中在特定区间产生随机数和随机字符
- C语随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,
- 3. 定义10个字节的键盘缓冲区,然后键盘输入字符填满该缓冲区,做如下工作: (1)分别将输入键盘缓冲区的字符按数字,小写字母,大写字母,其他字符进行计数; 分别将这些计数值显示出来。 (2)分别将这
- GenerateCharacter随机产生0~9和A~z之间的一个字符
- 字典序问题。在数据加密和数据压缩中常需要对特殊的字符串进行编码。给定的字母表A由26个小写字母组成。该字母表产生的升序字符串中字母从左到右出现的次序与字母在字母表中出现的次序相同,且每个字符最多出现1
- Java--产生随机数及随机字符的方法
- 随机产生20个字符串并且字符串不能重复 且进行排序
- 随机产生指定范围内的单个字符
- 编写程序实现以下功能: 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条
- 字典序问题。在数据加密和数据压缩中常需要对特殊的字符串进行编码。给定的字母表A由26个小写字母组成。该字母表产生的升序字符串中字母从左到右出现的次序与字母在字母表中出现的次序相同,且每个字符最多出现1
- 随机产生验证码并进行输入匹配
- C语言——产生一个随机字符或者随机数
- 编写函数,对标准输入进行扫描,并对“the”出现的次数进行计数。 进行比较时应区分大小写。认为一个单词有一个或多个空格字符分隔, 并且输入行在长度上不会超过100个字符,计数结果输出。
- 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,如果
- mysql 随机字符的产生方法
- vc产生随机字符
- iOS开发之把数组中的元素进行随机排序、随机数产生的几种方法
- 【转】C#产生随机字符的两段代码