public class FrequencyCalculator {public static void main(String[] args){//定义需要计算字母出现频率的文本String text="some off#acebooksea3rl255 yinvestorssoldofftheirstockatthefirs" +"tchancetheygotbutceomarkzuckerbergishangingontohissharesforatleast" +"thenextyearzuckerbergsinterviewwilltakeplaceonseptembereleventhinsa" +"nfranciscothesocialnetworkhasnearlyabillionusersbutthecompanyhasstru" +"ggledtomaintainmomentumsinceitsipo";//定义26个字母String letter="abcdefghijklmnopqrstuvwxyz";calculate(text,letter);}public static void calculate(String text,String letter){//定义存储各字母出现次数的数组int []counter=new int[26];//定义存储各字母出现频率的数组double []f4=new double[26];//定义字母总个数的计数器。排除标点符号,空格和数字。int total_counter=0;//将string类型转化成char类型char[] text_tr=text.toCharArray();char[] letter_tr=letter.toCharArray();//计算各字母出现次数以及总字母数//外层循环,遍历26个字母for(int i=0;i<26;i++){//内层循环,遍历待计算文本for(int j=0;j<text_tr.length;j++){//字母每在文本中出现一次,字母计数器加一,总字母个数计数器加一if(text_tr[j]==letter_tr[i]){counter[i]++;total_counter++;}}}//计算各字母出现频率,结果保留小数点后4位for(int i=0;i<26;i++){//将int类型转换成double类型double counter_d=(double) counter[i];double total_d=(double) total_counter;//字母出现频率=字母出现次数/总的字母数double fre=counter_d/total_d;//保留小数点后4位f4[i]=(double) (Math.round(fre*10000)/10000.0); //输出结果System.out.println(letter_tr[i]+" frequency is "+f4[i]);}}
}

以上代码运行结果如下图:

java 计算26个字母在一段文本中出现的频率(保留小数点后4位)相关推荐

  1. java 常用四舍五入保留小数点后两位方法

    java 常用四舍五入保留小数点后两位方法 1 . Math.round double num = Math.round(5.2544555 * 100) * 0.01; System.out.pri ...

  2. thinkphp:数值(保留小数点后N位,四舍五入,左侧补零,格式化货币,取整,生成随机数,数字与字母进行转换)

    一.保留小数点后N位/类似四舍五入(以保留小数点后三位为准) number_format()函数:第一个参数为要格式化的数字,第二个参数为保留的小数位数 方法一: public function te ...

  3. java小数点后两位 四舍五入_Java中double函数,四舍五入并保留小数点后两位的4种方法,BMI案例...

    今天写了一个小程序,Java 语言的测试BMI[谁不知道"BMI"的自行百度不解释],涉及到了四舍五入并保留小数点后两位,就总结了一下.先给大家看看程序 就是说给大家提供4种方法来 ...

  4. java除法保留两位小数_JAVA除法保留小数点后两位的两种方法

    1.利用Math.round()的方法: 两个int型的数相除,结果保留小数点后两位: int a=1188; int b=93; double c; c=(double)(Math.round(a* ...

  5. java保留小数点后两位(小数点保留两位方法)

    java.怎样简便的保留小数点后两位. 有两种情况: 1.只要输出结果的时候可以用以下方法: double x1 = 0.026; System.out.println(String.format(& ...

  6. Java中如何保留小数点后几位数字

    保留小数点后几位数字 对于一些Java的初学者(博主也只算平民级别,以下是我的见解,可能有小错误,有错莫怪),如何保留一个double型小数点后固定的位数很是让人苦恼,因为我刚学的时候不知道如何保留小 ...

  7. Java - 保留小数点后两位

    (1)使用BigDecimal ,保留小数点后两位 public static String format1(double value) {BigDecimal bd = new BigDecimal ...

  8. Java中的浮点数四舍五入到小数点后2位的一些实用方法

    前言 四舍五入到2或3个小数位是我们Java程序员日常开发中肯定会遇到.幸运的是,Java API提供了几种在Java中舍入数字的方法 我们可以使用Math.round(),BigDecimal或De ...

  9. java 四舍五入保留小数点后两位

    方式一: double f = 3.1516; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND ...

最新文章

  1. 谷歌对2021年的六个预测:数据和云技术的革命即将到来
  2. 长短期记忆网络_昆明理工大学刘可真、苟家萁、骆钊等:粒子群优化长短期记忆网络模型如何进一步提高变压器油中溶解气体浓度的精准预测?...
  3. 再谈MySQL JSON数据类型
  4. emacs 新手笔记(四) —— 使用 dired 完成一些简单的文件和目录操作
  5. Discuz! $_DCACHE数组变量覆盖漏洞
  6. linux安装spec编译器,RPM包制作之Spec文件参数详解
  7. linux kernel 三次握手建立TCP链接的实现
  8. gin 静态文件服务器拒绝,nginx实现简单的图片服务器(windows)+静态文件服务器-Go语言中文社区...
  9. 微软“.Net社区虚拟大会”dotnetConf2015:关键词:.NET 创新、开源、跨平台
  10. 为何大数据分析那么重要
  11. Flask运行时Unicode编码错误
  12. .NET高性能编程 - C#如何安全、高效地玩转任何种类的内存之Span的本质(一)。
  13. 工大瑞普Cisco路由模拟器Dynamips
  14. 判断是否打开相机权限,如果没有打开相机权限
  15. 新网约车大战,打车为什么更难了?
  16. linux基础操作之三
  17. adb命令获取设备IMEI
  18. Flink优化01---资源配置调优
  19. lect02_codes03_pandas
  20. c语言原地转10圈,[出圈]-题解(C语言代码)

热门文章

  1. java dispatchevent_java事件处理机制
  2. ddmmyy日期格式是多少_解锁9个日期时间计算套路,效率提高3.2%
  3. IDEA编译运行Springboot+vue项目卡死,一直building和copying resources
  4. HTML+CSS+JS实现 ❤️echarts大数据统计图表实例❤️
  5. warshall算法求传递闭包c++_【建模小课堂】图论算法
  6. mysql 从库可以写入吗_mysql主从库配置读写分离以及备份
  7. 获取当前窗口是否可见 document.visibilityState
  8. 使用foreach循环遍历Collection集合
  9. SpringBoot项目的 pom.xml第一行报错
  10. python里面的list