不等于符号(java)

时间:2015-02-09 22:47:09

标签: java string char

抱歉我的英文。我想为自己找一点,但我没有得到。我希望在单词的情况下使用该输出行。但是我有这样的印刷品:如果我想找到一个单词 - 一个符合要求 - 那些进入修道院的家。它仍然是输出线。并且在这种情况下不想显示。

public static void main(String[] args) throws FileNotFoundException {
    String line = "line number ones";
    String word = "num";
    String myWord = "";
    int startWord = 0;


    for(int i = 0; i < line.length()-1; i++) {
        if(line.charAt(i) == word.charAt(startWord)) {
            startWord++;
            myWord += line.charAt(i);

            if(myWord.equals(word)) {
                if(startWord == word.length()) {
                    System.out.println(line);
                }
                startWord = 0;
            }
        }
    }
}

需要进行额外检查。类似的东西:

if(Character.toString(line.charAt(i+1)) != any characters except space) {
output line
}

结果如下:

if(startWord == word.length() && Character.toString(line.charAt(i+1)) == " ") {
                        System.out.println(line);
                    }

但它不起作用。我们还必须考虑到这可能是一个点,一个逗号,只是行的结尾。怎么做?

1 个答案:

答案 0 :(得分:1)

您是否尝试检查字符是否等于空格?如果是,则不能在String上使用==因为它是一个对象。但您可以在char上使用它。

所以有两种方式:

String space = " ";
if (space.equals (" ")) // true

或者

char space = ' ';
if (space == ' ') // true

在您的示例中,您将执行此操作:

Character.toString(line.charAt(i+1)).equals (" ")