스윙에서 행맨 게임을 만들고 사용자가 입력 한 값이 해당 단어인지 확인하는 섹션을 만들고 있습니다. 단어의 각 문자를 배열에 넣었습니다. 그러나 내가 알고있는 편지를 입력 할 때 그것이 배열에 있다는 것은 그것이 편지가 아니라고 출력합니다. .contains
을 사용하면 오류 메시지가 생성됩니다.문자열 배열이 .equals와 작동하지 않습니다.
아래의 문제와 관련된 코드입니다.
private void checkcorrect() {
for (int i = 0; i < word.length(); i++) {
System.out.println(i);
if(wordch[i].equals(inputString)) {
System.out.println("Success");
letter = true;
}
}
if(letter==true) {
System.out.println("Was a letter");
}else {
System.out.println("Not a letter");
}
}
private class TextFieldListener implements ActionListener{
public void actionPerformed(ActionEvent evt){
String inputString = userInput.getText();
userInput.setText("");
System.out.println(inputString);
checkcorrect();
}
}
이클립스는 개발 환경에 불과합니다. 이것은 자바 프로그래밍 언어의 질문입니다. –
당신의 접근 방법에 대해서는 옳은 것처럼 보이지만 inputString이'ActionListener'에서'checkcorrect()'메소드로 어떻게 보내지는지 알지 못합니다. 당신은 또한 이것을하기위한 더 쉬운 방법을 위해서'String.contains()'를보아야한다. – markbernard
또한 우리는 어떤 단어가 무엇인지 모릅니다. 문제를 재현하는 완전한 최소 예를 게시하십시오. –