• Hadoop错误1(Text类型与String类型)


    在此类的博客中,博主主要记录的是在Hadoop实践过程中遇到的一些错误,先上一个代码

     1 protected void map(Object key,Text value, Context context)
     2                 throws IOException, InterruptedException {
     3             fanData.getInstance(value.toString());
     4             String name=fanData.getFanNo();
     5             if(tm.get(name)==null){
     6                 tm.put(name,one);
     7             }
     8             else{
     9                 for (java.util.Map.Entry<String,Integer> entry : tm.entrySet()) {
    10                     if(entry.getKey().toString().equals(name)){
    11                         int a=entry.getValue();
    12                         a++;
    13                         System.out.println(a);
    14                         tm.put(name,a);
    15                     }
    16                 }
    17             }
    18             
    19         }

    代码中展示的是一个map方法,代码是修改过后的正确的内容

    【错误一】

    运行下列一个语句时,如果map中的key(即name)相同的话,数据会自动覆盖的

    tm.put(name,one);

    【错误二】

    entry.getKey()==name//false
    entry.getKey().toString()==name//false
    
    entry.getKey().toString().equals(name)//true

    在上述代码中,

    entry.getKey()

    是一个Text类型,而

    name

    是一个String类型,需要将两者进行比较的话只有第三个语句才是正确的

  • 相关阅读:
    html中的浮动
    Html中元素的分类
    前端标签命名规范
    meta详解
    CSS的嵌套方法
    html标签
    W3C标准
    AE待整理
    AE小知识点备忘录
    Maximum Subarray
  • 原文地址:https://www.cnblogs.com/yuanninesuns/p/7705128.html
Copyright © 2020-2023  润新知