如果在Android Studio中声明 - 如果句子中只有一个单词匹配,则继续

时间:2016-05-03 23:56:36

标签: android listview android-studio android-intent android-edittext

我正在尝试创建一个应用程序来检查在EditText字段中输入的语句的条件。目前,如果输入的单词是“下一个”,我已经写过了。这不是区分大小写然后通过按下' Blogin'进入下一个屏幕。按钮。

我的问题是如何写一个' if'声明,以便如果在EditText字段中输入一个短语,并且该短语的任何部分都包含单词' next'然后按下' Blogin'进入下一页。按钮?例如,如果输入短语为'请转到下一页',' if'声明应该承认有“下一个”字样。它不应该区分大小写,因此您可以通过按下“博客”来进入下一页。按钮。

以下是需要更改的部分相关代码的片段:

 public void onButtonClick(View v) {
    if (v.getId() == R.id.Blogin) {
        String str = a.getText().toString();


        //Go to the next 'Display' window or activity if the person enters the correct username which is not case sensitive
        if (str.equalsIgnoreCase("next")) {
            Intent userintent = new Intent(MainActivity.this, Display.class);
            startActivity(userintent);
        } else {
            Toast.makeText(getApplicationContext(), "Incorrect Information", Toast.LENGTH_SHORT).show();
        }
    }
}

2 个答案:

答案 0 :(得分:2)

您真正需要做的就是将contains()方法与toLowerCase()方法结合使用:

    if (str.toLowerCase().contains("next")) {
        Intent userintent = new Intent(MainActivity.this, Display.class);
        startActivity(userintent);
    } else {
        Toast.makeText(getApplicationContext(), "Incorrect Information", Toast.LENGTH_SHORT).show();
    }

有关更深入的信息,请参阅此处:String contains - ignore case

答案 1 :(得分:1)

您可以使用java.lang.String.contains(),如下所示:

if (str.contains("next")||str.contains("Next") {
    Intent userintent = new Intent(MainActivity.this, Display.class);
    startActivity(userintent);
} else {
    Toast.makeText(getApplicationContext(), "Incorrect Information", Toast.LENGTH_SHORT).show();
}