我正在尝试在其中一款游戏中实现寻路系统,
所以我有以下问题。
我在这里得到了一个不错的ArrayList:
ArrayList<PVector> path = new ArrayList<>();
现在它为空,稍后在Process中填充PVector条目:
{5.0,6.0,0},{5.0,7.0,0},{5.0,8.0,0},{5.0,9.0,0}
那不是很好吗?但是我不能使用它,因为我只需要
{5.0,6.0,0}
中的5.0...。我用
path.get(0)
尝试过...那里我只得到{5.0,6.0,0}
...所以我在这里找到了一些新东西:path.get(0)[0];
也不起作用...因为表达式类型需要为数组,但其解析为对象那么,如何从索引中获取单个条目? :/
如何从
5.0
中取出{5.0,6.0,0}
? 最佳答案
对于此类问题,the reference是您最好的朋友。
但是请记住,path.get(0)
返回一个PVector
。然后,您可以使用the PVector API定位其位置。像这样:
ArrayList<PVector> path = new ArrayList<PVector>();
//add PVectors to path
PVector p = path.get(0);
float x = p.x;
请注意,我正在使用
<PVector>
泛型,以便ArrayList
知道其拥有的对象类型。 p
变量不是必需的;我只是用它来显示path.get()
返回PVector
。您也可以一行完成:ArrayList<PVector> path = new ArrayList<PVector>();
//add PVectors to path
float x = path.get(0).x;