类型不匹配:无法从元素类型Object转换为EnderPearl

时间:2014-07-09 17:42:32

标签: java minecraft bukkit type-mismatch

好的,我有一个问题......标题基本上解释了错误。但我不知道如何解决它。如果你能帮助我,那就很高兴。

          if (cause == PlayerTeleportEvent.TeleportCause.ENDER_PEARL)
      {
        ArrayList pearls = (ArrayList)this.ender.get(e.getPlayer());

          if (pearls != null)
          {
              Location to = e.getTo();
              for (EnderPearl p : pearls) //**Error is here. ("pearls")**
              {
                  if ((p != null) && (p.getLocation().distanceSquared(to) < 2.0D))
                  {
                      pearls.remove(p);
                      e.setCancelled(true);
                      return;
                      }
                  }
              }
          }

1 个答案:

答案 0 :(得分:0)

在您的代码中,您使用原始类型,您最好使用以下代码来定义数组列表:

ArrayList<EnderPearl> pearls = (ArrayList)this.ender.get(e.getPlayer());

然后你不必担心施法或任何事情!