如何解决将字符数组与 KeyEvent 进行比较时获取 ArrayIndexOutOfBoundsException
我正在构建一个 JavaFX 输入应用程序,并试图检查用户输入是否与他们需要输入的字母匹配。我是通过 KeyEvent 执行此操作并将其与数组中的匹配索引单独进行比较。这样做后,我得到了很多错误,主要原因是
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 117 out of bounds for length 5 at sample.Controller.detectInputAreaKeyEvent(Controller.java:51)
控制器
@FXML
private void detectInputAreaKeyEvent(KeyEvent event) {
char[] splitter = textToType.toCharArray();
for (char c : splitter) {
if (event.getText().equals(splitter[c])) {
System.out.println("right letter");
}
else {
System.out.println("wrong letter");
}
}
}
FXML
<StackPane fx:id="typingArea" prefHeight="150.0" prefWidth="200.0" BorderPane.alignment="CENTER">
<children>
<Text fx:id="sixsixsix" strokeType="OUTSIDE" strokeWidth="0.0" text="urmom">
<font>
<Font size="40.0" />
</font>
</Text>
<TextArea fx:id="inputArea" onKeyPressed="#detectInputAreaKeyEvent" opacity="0.29" prefHeight="200.0" prefWidth="200.0" />
</children>
</StackPane>
主类
String textToType = "test";
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。