zoukankan      html  css  js  c++  java
  • 290. 单词规律

    //一直出错,最后才明白字符串的比较不能用==,这是比较的两个地址值,这两个字符串的地址值应该肯定是不一样的,所以需要用equals来比较是否相同,吐血。。。。。

    class Solution {
        public boolean wordPattern(String pattern, String str) {
            Map<Character,String> map=new HashMap<Character,String>();//存储键值对
            Set<String> set=new HashSet<>();                           //存储值
            String[] words=str.split("\s+");                              //将这个字符串以空格分割
            if(pattern.length()!=words.length)
                return false;
            for(int i=0;i<pattern.length();i++)
            {
                if(!map.containsKey(pattern.charAt(i)))
                {
                    if(!set.contains(words[i]))
                    {
                        map.put(pattern.charAt(i),words[i]);
                        set.add(words[i]);
                    }
                    else
                        return false;
                }
                else
                {
                    if(!map.get(pattern.charAt(i)).equals(words[i]))
                        return false;
                }
            }
            return true;
        }
    }

  • 相关阅读:
    vtk 矩阵管理系统
    在opengl中使用纹理
    [译文]:单元测试的七种境界
    [翻译]:六分钟八法则塑造优秀程序员
    weekly review 200921: Power Sleep
    Bye, Scofield
    weekly review 200922: Goal
    weekly review 200920: Prototype Demo
    转载:测试驱动开发三原则
    weekly review 200918: productive
  • 原文地址:https://www.cnblogs.com/cold-windy/p/11344172.html
Copyright © 2011-2022 走看看