code: @Override
      public double similarScore(List<Word> words1, List<Word> words2) {
          if(words1 == null || words2 == null){
              //只要有一个文本为null，规定相似度分值为0，表示完全不相等
              return 0.0;
          }
          if(words1.isEmpty() && words2.isEmpty()){
              //如果两个文本都为空，规定相似度分值为1，表示完全相等
              return 1.0;
          }
          if(words1.isEmpty() || words2.isEmpty()){
              //如果一个文本为空，另一个不为空，规定相似度分值为0，表示完全不相等
              return 0.0;
          }
          //输出词列表信息
          if(LOGGER.isDebugEnabled()) {
              LOGGER.debug("词列表1：");
              LOGGER.debug("\t" + words1);
              LOGGER.debug("词列表2：");
              LOGGER.debug("\t" + words2);
          }
          double score = scoreImpl(words1, words2);
          if(LOGGER.isDebugEnabled()){
              LOGGER.debug("分值："+score);
          }
          score = (int)(score*1000000+0.5)/(double)1000000;
          if(LOGGER.isDebugEnabled()){
              LOGGER.debug("取六位小数，四舍五入，分值："+score);
          }
          return score;
      }
docs: 词列表1和词列表2的相似度分值
  @param words1 词列表1
  @param words2 词列表2
  @return 相似度分值