首页 > 解决方案 > 当我输入单个单词字符串而不是句子中的单个字符串时,如何停止 do while 循环?不知道怎么说

问题描述

所以,我正在制作一个程序,如果用户写“cookie”这个词,你只能停止循环。不幸的是,当我在句子中添加单词“cookie”等“我爱饼干”时,程序停止了。我如何让程序继续运行并在用户放置“cookie”时停止。这是我的代码。

import java.util.Scanner;
public class Lab6A {
    public static void main(String[]args){
        Scanner game = new Scanner(System.in);
        String cookie;
        String word = "cookie";
        do {
            System.out.print("Gimme a cookie: ");
            cookie = game.next();
        } while (!word.contains(cookie));
    }
}

标签: javastringloopsdo-while

解决方案


如果您检查是否word contains cookie,如果用户输入ior ,则返回 true e,因为您的单词"cookie"实际上包含该字母。因此,如果您写“我爱 cookie”,您的代码就会停止,因为 cookie 包含字母 i。

如果你像这样检查它:

cookie.equals(word);

如果cookie 并且 word由“cookie”组成,则仅返回true,仅此而已。


推荐阅读