博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
判断英文单词的个数
阅读量:5796 次
发布时间:2019-06-18

本文共 2111 字,大约阅读时间需要 7 分钟。

hot3.png

 

package test;

import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Scanner;
import java.util.TreeMap;

import org.apache.commons.collections.MapUtils;

public class demo{

    public static void main(String[] args){

        Scanner scan = new Scanner(System.in);

        System.out.println("输出:");
        String str = scan.nextLine();

        //以下是代码实现

        System.out.println(str);
        String[] item =str.split(" ");
        Map<String,Integer> map= new HashMap<String, Integer>();
        for(String s:item){
            if(s.contains(",")){
                String see=s.substring(0,s.length()-1);
                if(map.containsKey(see)){
                    map.put(see, map.get(see)+1);
                }else{
                    map.put(see, 1);
                }
                
//                System.out.println(see);
            }else if(s.contains(":")){
                String see=s.substring(0,s.length()-1);
                if(map.containsKey(see)){
                    map.put(see, map.get(see)+1);
                }else{
                    map.put(see, 1);
                }
                
//                System.out.println(see);
            }else if(s.contains(".")){
                String see=s.substring(0,s.length()-1);
                if(map.containsKey(see)){
                    map.put(see, map.get(see)+1);
                }else{
                    map.put(see, 1);
                }
//                System.out.println(see);
            }else{
                if(map.containsKey(s)){
                    map.put(s.toLowerCase(), map.get(s)+1);
                }else{
                    map.put(s.toLowerCase(), 1);
                }
                //System.out.println(s);
            }
            
            
        }
        ValueComparator bvc =  new ValueComparator(map);  
        TreeMap<String,Integer> sorted_map = new TreeMap<String,Integer>(bvc);
        sorted_map.putAll(map);  
        System.out.println("第一次:"+sorted_map);
        
        Iterator it = sorted_map.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry entry =(Map.Entry) it.next();
            Object key = entry.getKey();
            Object value=entry.getValue();
             
             System.out.println(key+" "+value);
            
        }
        
        

        

    }

}

class ValueComparator implements Comparator<String> {  

      
    Map<String, Integer> base;  
    public ValueComparator(Map<String, Integer> map) {  
        this.base = map;  
    }  
  
       
    public int compare(String a, String b) { 

        if (base.get(a) > base.get(b)) {  

            
            return -1;  
        }else if(base.get(a) < base.get(b)){
            return 1;
        }
        else { 
            if(a.charAt(0)<b.charAt(0)){
                return -1;
            }else{
                return 1;
            }
             
        }   
    } 
    
}  

转载于:https://my.oschina.net/u/3288494/blog/905345

你可能感兴趣的文章
在Unity3d编辑器中加入菜单以及菜单项
查看>>
js 正则之 判断密码类型
查看>>
多线程,多进程选择(了解)
查看>>
MyEclipse9,MyEclipse10 安装ADT
查看>>
swift 属性和方法
查看>>
PHP 加速 eaccelerator
查看>>
linux程序设计1
查看>>
Webserver推送技术
查看>>
超酷的jQuery百叶窗图片滑块实现教程
查看>>
fs学习笔记之输出格式
查看>>
音频中PCM的概念
查看>>
RPC学习--C#使用Thrift简介,C#客户端和Java服务端相互交互
查看>>
perl常用字符串函数
查看>>
CentOS 6.4 图文安装教程(有些设置大部分教程没出现过)
查看>>
samba服务器详细配置(非域模式)
查看>>
caffe神经网络框架的辅助工具(将图片转换为leveldb格式)
查看>>
linux sed
查看>>
【processing】小代码5
查看>>
.net平台推送ios消息
查看>>
在JavaScript里嵌入大量字符串常量的方法
查看>>