Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.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:如何返回ArrayList中的唯一元素_Java_Arraylist - Fatal编程技术网

Java:如何返回ArrayList中的唯一元素

Java:如何返回ArrayList中的唯一元素,java,arraylist,Java,Arraylist,我正在制作一个机器人迷宫,在那里机器人可以在不撞墙的情况下找到目标。我已经对我的代码进行了彻底的注释,希望它能被理解 在死胡同和走廊处,passageDirectionsArrayList中只有一条通道。我如何返回这个唯一的方向 感谢您的帮助:) PS:我是一名初级程序员,仍在学习如何解释你的答案,就像你要向一个三岁的孩子解释一样:)你可以使用passageDirections.get(0),它将返回列表中的第一个元素。 因为(我希望)您保证列表中只有一个元素,这就解决了您的问题 您应该在呼叫前

我正在制作一个机器人迷宫,在那里机器人可以在不撞墙的情况下找到目标。我已经对我的代码进行了彻底的注释,希望它能被理解

在死胡同和走廊处,
passageDirections
ArrayList
中只有一条通道。我如何返回这个唯一的方向

感谢您的帮助:)


PS:我是一名初级程序员,仍在学习如何解释你的答案,就像你要向一个三岁的孩子解释一样:)

你可以使用
passageDirections.get(0)
,它将返回列表中的第一个元素。 因为(我希望)您保证列表中只有一个元素,这就解决了您的问题


您应该在呼叫前检查大小,以防止IndexOutOfBoundsException

if (passageDirections.size() > 0)
  passageDirections.get(0)

这么简单的解决方案!不知道我是怎么错过的哈哈。问题是,它编译得很好,但是由于某种原因它无法运行:(@codeav3你所说的“…由于某种原因无法运行”是什么意思?在大多数情况下,错误消息中都明确提到了原因:)@pshemo这是一个在程序运行时不断重复的错误。机器人一动不动
java.lang.reflect.InvocationTargetException
原因是:java.lang.IndexOutOfBoundsException:Index:0,Size:0
…@codeav3所以你得到了原因:所用集合的大小是0,这意味着其中没有元素,所以你不能
获取任何元素(因为没有),NetBeans、IntelliJ有自己的调试器。使用您想要的。这不会阻止
NullPointerException
,而是阻止
IndexOutOfBoundsException
。但首先检查仍然是一个好主意。