Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 类型不匹配:无法从元素类型对象转换为播放器_Java - Fatal编程技术网

Java 类型不匹配:无法从元素类型对象转换为播放器

Java 类型不匹配:无法从元素类型对象转换为播放器,java,Java,这是代码。不知道怎么了。发生在说 for(玩家:World.getPlayers()){ if(cmd[0].equalsIgnoreCase(“票证”)){ 如果(player.getRights()>0){ if(World.getTicketList().size()==0){ player.getPackets().sendGameMessage(“没有人需要帮助,所以坐下来休息一下。”); 返回true; } 字符串username=World.getTicketList().get(

这是代码。不知道怎么了。发生在说

for(玩家:World.getPlayers()){
if(cmd[0].equalsIgnoreCase(“票证”)){
如果(player.getRights()>0){
if(World.getTicketList().size()==0){
player.getPackets().sendGameMessage(“没有人需要帮助,所以坐下来休息一下。”);
返回true;
}
字符串username=World.getTicketList().get(0.toString();
Player p2=World.getPlayer(用户名);
player.setNextWorldTile(p2);
p2.getPackets().sendGameMessage(“请向“+Misc.formatPlayerNameForDisplay(player.getUsername())+”提问”);
World.remoteTicket(username.toLowerCase());
返回true;
}
if(World.getTicketList().contains(player.getUsername().toLowerCase()){
player.getPackets().sendGameMessage(“您已经提交了票证。”,true);
返回true;
}
addToTicket(player.getUsername());
player.getPackets().sendGameMessage(“您的票证已提交。您的票证号为“+World.getTicketId(player.getUsername())+1+”);
player.getPackets().sendGameMessage(“确保您不在PvP区域…”);
字符串username=World.getTicketList().get(0.toString();
for(玩家:World.getPlayers()){
如果(player.getRights()>0){
players.getPackets().sendGameMessage(Misc.formatPlayerNameForDisplay(player.getUsername())+“已发出协助请求。”,true);
}
}
返回true;
}
}
编辑:

下面是GetPlayer的代码

publicstaticfinalentitylist getPlayers(){
返回球员;
}

确保World.getPlayers()返回的任何东西都实现java.lang.Iterable

问题在for循环中。换成

for (Object player : World.getPlayers()) {
     if (((Player)player).getRights() > 0)
         players.getPackets().sendGameMessage(Misc.formatPlayerNameForDisplay(player.getUsername())+" has issued a assistance request.", true);
     }
}

这应该行得通。

谢谢,这不起作用,但只能在数组或java.lang.Iterable的实例上进行迭代。我将发布代码。哎哟。投给玩家[],而不是玩家。我编辑了这篇文章。试试看。嗯,似乎还是不起作用。现在就得到这个,不能从EntityList转换到Player[]我想我们需要更多地了解EntityList是什么以及从哪里获得它。EntityList是由您实现的吗?它是否实现了java.lang.Iterable接口?如果没有,则需要。发布您对EntityList的定义。