处理错误 ArrayIndexOutOfBoundsException: 32

问题描述

myPort = new Serial(this,Serial.list()[32],115200);

那个代码有什么问题?

enter image description here

任何建议将不胜感激

解决方法

注意 printArray(Serial.list()) 的控制台输出。

您在索引 0 处有一个串行端口“COM4”。

任何高于该值(例如 32)的索引都超出了有效的数组索引范围。

您使用的代码有一个有用的注释:

// if you are a Windows user,please change Serial.list()[your number]

只需将 32 换成 0 即可。

尝试阅读并理解您使用的代码:想象您阅读的代码会做什么以及它如何运行,然后实际运行它并将您的假设与实际行为进行比较。在您不熟悉的地方使用处理参考。这将对您作为程序员有很大帮助。

有关详细信息,请参阅Processing Serial reference