zoukankan      html  css  js  c++  java
  • 杭电oj 2072————统计单词数(java)

    problem:统计单词数

    思路:利用HashMap的特性——不能反复存储同一个键得数据,所以可以保证map里边儿的元素都是不重复的,存储完毕之后直接输出size就好了

    注意事项:

    1.利用string类的方法split()时,要用正则表达式“ +”来匹配,否则有三个连续空格以上的话,空格会占一个位子

    2.hashmap为空的时候返回的是-1而不是0,所以如果字符串为空的时候,要单独考虑

    source code:

    package hduoj;
    
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Scanner;
    //注意:空格后面要加上“+”否则只会以一个空格来split,要是有几个空格连在一起,空格也会算一个单词
    public class hdoj_2072 {
        public static void main(String[] args) {
            String line = "";
            Scanner sc = new Scanner(System.in);
            while(true){
                line =  sc.nextLine();
                if(line.equals("#")) break;
                Map<String,Integer> the_different_word = new HashMap();
                String[] elements = line.split(" +");
                if(elements.length==0) {
                    System.out.println(0);
                    continue;
                }
    //            new util().prinout(elements);
                for(String temp:elements){
                    if(!the_different_word.containsKey(temp)){
                        the_different_word.put(temp,1);
                    }
                }
                System.out.println(the_different_word.size());
            }
        }
    }

    注:代码已经AC,贴上来的是在自己编译器里的,需要改关键字

    希望对大家有所帮助

    以上

  • 相关阅读:
    2021.12.7
    2021.12.13(观察者模式c++)
    2021.12.05(echarts生成mysql表词云)
    2021.12.10(申请加分项)
    2021.12.10(课程总结)
    2021.12.11(Linux,yum错误,There are no enabled repos.)
    12月读书笔记02
    2021.12.12(springboot报ScannerException)
    2021.12.09
    centos国内镜像站
  • 原文地址:https://www.cnblogs.com/lavender-pansy/p/12174820.html
Copyright © 2011-2022 走看看