/**
* 7-4
* 编写一个Exercise类,该类中含有如下几个方法
* 1> Statistics(object arc[])方法:
* 统计每个字母(不计大小写)出现的次数相对于字母总数的比率,
* 打印显示这个比率
* 2> Sort (object arc[])方法:
* 对给定的数组进行排序。
* 通过编程创建一个Exercise类的对象,
* 从主方法中接收用户输入的一段英文文字,
* 并将其存入到新创建的对象中。
* 通过调用对象方法显示输出结果。
*/
import java.util.Arrays;
import java.util.Scanner;
public class Test{
public static void main(String[] args){
Scanner read = new Scanner(System.in);
System.out.println("输入一段英文文字");
// char[] text = new char[100];
// int i = 0;
// while (read.nextInt() != -1)
// text[i++] = (char) read.nextInt();
String text = read.next();
Exercise exercise = new Exercise();
exercise.Statistics(text);
exercise.mySort(text);
}
}
class Exercise{
void Statistics(String text)
{
char word[] = new char[256];
for (int i = 0; i < 256; i++)
word[i]=0;
for (int i = 0; i < text.length(); i++)
{
int number = text.charAt(i);
if (number >= 65 && number <= 90)
number += 32;
++word[number];
}
for (int i = 0; i < 256; i++)
if (word[i] > 0)
System.out.println((char)i + " 所占比率为 " + (double)word[i]/text.length());
}
void mySort (String text)
{
char[] texts = new char[text.length()];
for (int i = 0; i < texts.length; i++)
texts[i] = text.charAt(i);
Arrays.sort(texts);
for (int i = 0; i < texts.length; i++)
System.out.print(texts[i] + " ");
}
}
转载于:https://blog.51cto.com/anglecode/1619868