课堂测试一

package word_show;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

public class word{

public static void main(String[] args) throws IOException {
try {
//IO操作读取文件内容
FileReader fr = new FileReader("D:\\\\QQ Download\\\\java\\\\piao_english.txt");
BufferedReader br = new BufferedReader(fr);
NumberFormat nf = NumberFormat.getInstance();

// 设置精确到小数点后2位

nf.setMaximumFractionDigits(2);
HashMap<String, Integer> map = new HashMap<String, Integer>();

String string =null;
Integer count = 0;//每个字母的次数
Integer total = 0;//总共多少个字母

while ((string=br.readLine())!=null) {
char[] ch = string.toCharArray();

for (int i = 0; i < ch.length; i++) {
if (ch[i] > 'A' && ch[i]< 'z') {

total++;
ch[i] = Character.toLowerCase(ch[i]);
count = map.get(ch[i]+"");
if (count == null) {
count = 1;
}else {
count++;
}
map.put(ch[i]+"", count);
}
}
}
ArrayList<String> list = new ArrayList<String>();
list.addAll(map.keySet()); //将单词添加到list中

//排序按照出现次数降序排列
for(int i = 0;i < list.size();i++)
{

for(int j = 0;j < (list.size() - i-1);j++) //list.size() - i-1因为要用到i+1要考虑是否超出范围的问题
{

if(map.get(list.get(j)) < map.get(list.get(j+1)))
{
String t = list.get(j);
list.set(j, list.get(j+1));
list.set( j+1, t);
}
}
}
for(int i = 0 ; i < list.size();i++)
{
System.out.println(list.get(i) + ":" + map.get(list.get(i)) +" "+ nf.format((float)(map.get(list.get(i)))*100/total) + "%");
}


} catch (FileNotFoundException e) {
e.printStackTrace();
}
}

}

日常Java测试第一段 2021/11/12的更多相关文章

  1. 日常Java测试第二段 2021/11/12

    第二阶段 package word_show; import java.io.*;import java.util.*;import java.util.Map.Entry; public class ...

  2. 日常Java测试 2021/11/14

    课堂测试三 package word_show; import java.io.*;import java.util.*;import java.util.Map.Entry; public clas ...

  3. 初学Java,第一段代码

    public class myapp { public static void main(String[] args) { // TODO Auto-generated method stub Sys ...

  4. 日常Java 2021/11/18

    用idea实现Javaweb登录页面 <%-- Created by IntelliJ IDEA. User: Tefuir Date: 2021/11/18 Time: 18:14 To ch ...

  5. spring 第一篇(1-1):让java开发变得更简单(下)转

    spring 第一篇(1-1):让java开发变得更简单(下) 这个波主虽然只发了几篇,但是写的很好 上面一篇文章写的很好,其中提及到了Spring的jdbcTemplate,templet方式我之前 ...

  6. java开学第一周测试自我感想

    开学第一周,王建民老师就对我们进行了java测试,对我们说测试题目是基于期末考试的基础难度来出的.我们的考试完全是靠暑假在家自学的基础,如果在家没有自学java,那完全就是看不懂试卷到底要考什么.由于 ...

  7. Java面试题:n=2\n1*2*5*6\n--3*4\n\nn=3\n1*2*3*10*11*12\n--4*5*8*9\n----6*7\n如何实现如上结构的数据

    今天学长在面试的时候遇到了一道题,然后让大家做一做. 在不看下面的答案之前,悠闲的朋友们一起来抖动一下大脑吧! 以下是我的想法: import java.util.Scanner;public cla ...

  8. 日常Javaweb 2021/11/19

    Javaweb Dao层: //连接数据库,实现增查功能 package dao; import java.sql.Connection; import java.sql.DriverManager; ...

  9. 日常Java 2021/9/21

    将Java数组中的元素前后反转.题目要求:已知一个数组arr = {11,12,13,14,15}用程序实现把该数组中的元素值交换,交换后的数组arr = { 15,14,13,12,11},并输出交 ...

随机推荐

  1. gawk使用方法简介

    转载:gawk 使用方法简介 - 简书 (jianshu.com) gawk 是最初 Unix 系统上 awk 程序的 GNU 版本.相对于作为流式编辑器的 sed 而言,它提供了更为强大的编程语言特 ...

  2. Python import Queue ImportError: No module named 'Queue'

    python3 中引入Queue 会报出这个问题 python3 中这样引入 import queue python2 中这样引入 import Queue 为了兼容 可以这样 import sys ...

  3. cf 12C Fruits(贪心【简单数学】)

    题意: m个水果,n个价格.每种水果只有一个价格. 问如果给每种水果分配价格,使得买的m个水果总价格最小.最大. 输出最小值和最大值. 思路: 贪心. 代码: bool cmp(int a,int b ...

  4. popStar机机对战数据生成器代码(C#)

    代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; ...

  5. js 组合继承详解

    目录 前言 原型链继承 构造函数继承 组合继承 前言 首先学习继承之前,要对原型链有一定程度的了解. 不了解可以去先阅读我另一篇文章,里面对原型链有一个较为详细的说明:js 原型链详解. 如果已经了解 ...

  6. Ambari 2.4 在 CentOS 7.4 因 TLS_1.2 协商内部错误导致注册失败

    问题背景 业务准备在天翼云上搭建一套线上环境,VM 操作系统版本为 CentOS Linux release 7.4.1708,但是在 ambari Web 管理页面上部署hadoop节点主机的时候, ...

  7. 攻防世界 Misc 新手练习区 give_you_flag Writeup

    攻防世界 Misc 新手练习区 give_you_flag Writeup 题目介绍 题目考点 gif图片分离 细心的P图 二维码解码 Writeup 下载附件打开,发现是一张gif图片,打开看了一下 ...

  8. PTA 7-3 畅通工程之最低成本建设问题 (30分)

    PTA 7-3 畅通工程之最低成本建设问题 (30分) 现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本. 输入格式: 输入数据包括 ...

  9. linux运维思想

    1.安装部署某个服务或者研究某个知识点时,宁可花大量时间,也需要尽量将该服务搞透,后续再遇到相关问题时你会发现这为你节省的时间将远远比你当时花的时间多. 2.安装部署时,做好记录,发本地记录并发表博文 ...

  10. 查看Git提交的代码统计

    1,提交Top5: git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | head -n 5 2,某用户提交的代码统计 git log ...