字符串数组不与.equals一起使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串数组不与.equals一起使用相关的知识,希望对你有一定的参考价值。

我正在Swing中制作一个刽子手游戏,我正在研究用户输入的值是否在单词中的部分。我已将单词的每个字母放入数组中。但是,当我输入一个我知道的字母时,它会输出它不是一个字母。使用.contains会创建一条错误消息。

与下面的问题有关的代码。

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();
    }
}
答案

尝试“.contains”

    String word = "test";
    String[] letter = { "t"};
    boolean hasTheLetter = word.contains(letter[0]);
    System.out.println(hasTheLetter);
另一答案

您还可以使用indexOf> 0进行检查。

String word = "abcdef";
String[] letter = {"d"};

boolean foundLetter = (word.indexOf(letter[0]) > 0);
if (foundLetter)
    // something

如果你得到一个空指针,这意味着你正在访问一个不存在/尚未声明的变量。

以上是关于字符串数组不与.equals一起使用的主要内容,如果未能解决你的问题,请参考以下文章

“Try...Catch”块不与 parseInt() 一起使用

如何在不与 MainActivity 交互的情况下从通知中打开片段页面?

立即执行不与 select into 一起使用

公共固定是 iOS 不与 Alamofire 一起使用

Keras功能(K.function)不与RNN一起使用(提供的代码)

CoreData 与 iCloud,不与同步通知一起使用