当前位置:  开发笔记 > 编程语言 > 正文

不确定为什么带有字符串的if语句不起作用

如何解决《不确定为什么带有字符串的if语句不起作用》经验,为你挑选了1个好方法。

我正在努力制作一个基本的8球计划,并让它全部正常工作,但我想尝试改变它,所以如果人们问某些问题有预定义的答案.

package Main;

import java.util.Random;
import java.util.Scanner;

public class eightBall {

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);
        System.out.println("Ask a yes or no question");

        String question = input.next();

        double rnd = Math.random();
        int random = (int)(rnd*10);
        int numberOfChoices = 5;

        if(question.equalsIgnoreCase("Will i win the lottery?")){
            System.out.println("The almigty 8 ball can not tell you this answer.");
        }else{
            switch(random % numberOfChoices){


            case 0:
                System.out.println("No");
                break;
            case 1:
                System.out.println("Yes");
                break;
            case 2:
                System.out.println("Maybe");
                break;
            case 3:
                System.out.println("Definitely");
                break;
            case 4:
                System.out.println("Definitely Not");
                break;

            }
        }


    }

}

我不确定为什么我的if声明不起作用,因为如果我运行并问"我会赢得彩票吗?",我从那个转换声明中得到了一些东西.



1> Moira..:

next() 返回一个单词,而不是整行.

更具体地说,它读取缓冲区直到它到达分隔符,默认情况下是一个空格(' ').

你最终会得到"Will"而不是"Will i win the lottery?".

使用nextLine(),如果你想输入的整条生产线.

如果您认为某些内容无法正常工作,请尝试打印出来或使用调试器.

推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有