0

所以基本上我要做的就是随机添加螃蟹到网格世界,我做到了。然后,我需要使用 getOc​​cupiedLocations 方法将占用位置的数组打印为有序对。有什么建议吗?这是我到目前为止所拥有的:

package projects.critters;
import info.gridworld.actor.ActorWorld; 
import info.gridworld.grid.Location;
public class Lab
{    
    public static void main (String[] args)
    {
        ActorWorld world = new ActorWorld();
        for (int i =0; i<10; i++)
        {
            world.add (new CrabCritter());
        }
        world.show();
    }
}
4

2 回答 2

0

扩展约翰史密斯的答案。如果你只想打印 CrabCritter 占用的位置,你可以这样做:

for(Location l : world.getGrid().getOccupiedLocations()){
    if(world.get(l) instanceof CrabCritter)
        System.out.println(l);
}  
于 2014-04-04T20:02:58.470 回答
0

好的,所以方法 getOc​​cupiedLocations() 返回一个位置数组。我不知道有序对的确切含义,但如果您的意思是 (x, y),那么这很容易做到。默认情况下,当您打印出 Location 时,它是一个有序对。因此,您所要做的就是遍历被占用的位置并打印出来。例如:

for(Location l : world.getGrid().getOccupiedLocations()){
    System.out.println(l);
}

就是这样......至于评论:您不需要语言标签,因为这是一个明显适用于 Java 的 GridWorld 问题。

于 2014-04-04T02:38:50.737 回答