0

我正在研究 finch 机器人,但在使用其中一项功能时遇到问题。my_finch.getObstacleSensors().my_finch 是机器人。这就是 API 所说的;

public boolean[] getObstacleSensors() 将两个障碍物传感器的值作为 2 元素布尔数组返回。左侧传感器是第 0 个元素,右侧传感器是第 1 个元素。返回: 2 元素数组中左右障碍物传感器的值

我要做的是检索左右传感器的值,这样如果值相同,则它检测到的对象没有移动,但如果值发生变化,则对象已移动,机器人可以继续跟随。

我在从布尔数组中恢复数据时遇到问题。这是我尝试过的:

boolean[] Sense;
System.out.println(Sense[1]);

Output: False....

System.out.println(my_finch.getObstacleSensors());

Output: [Z@5f150435
[Z@1c53fd30
[Z@50cbc42f
[Z@75412c2f
[Z@282ba1e
[Z@13b6d03
ECT.

首先我只是想弄清楚如何使用这个功能,或者我应该尝试不同的方法来查看对象是否移动了?

4

1 回答 1

2

你的问题是因为数组对象没有 toString 方法,这就是你System.out.println(my_finch.getObstacleSensors());不打印布尔值的原因。

尝试System.out.println(Arrays.toString(my_finch.getObstacleSensors()));

于 2017-03-03T13:44:04.853 回答