如果语句总是给出相同的答案 [英] If statement always giving the same answer

查看:29
本文介绍了如果语句总是给出相同的答案的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

import java.util.Scanner;

class Practice {

public static void main(String args[]) {

    System.out.println("Enter the number of treats you have:");
    Scanner treatsScanner = new Scanner(System.in);
    int treats = (treatsScanner.nextInt());

    System.out.println("Enter the number of hamsters you have:");
    Scanner hamstersScanner = new Scanner(System.in);
    int hamsters = (hamstersScanner.nextInt());

    System.out.println("How many treats does each hamster need?");
    Scanner neededTreatsScanner = new Scanner(System.in);
    int neededTreats = (neededTreatsScanner.nextInt());     

    int treatsPerHamster = treats / hamsters;
    boolean enoughTreats = treatsPerHamster >= neededTreats;        

    if (enoughTreats = true) {
        System.out.println("There are enough treats for all the hamsters!");
    }
    else if (enoughTreats = false) {
        System.out.println("Oh no! There aren't enough treats!");        
    }

}
}

谁能解释一下为什么这个程序会返回有足够的零食给所有的仓鼠!"不管是否neededTreats">treatsPerHamster"?

Can someone explain to me why this program returns "There are enough treats for all the hamsters!" regardless of whether "neededTreats" > "treatsPerHamster"?

谢谢.

推荐答案

您正在将值 true 分配给 enoughtreats.

You are assigning the value true to enoughtreats.

尝试使用相等运算符而不是赋值:

Try using the equality operator rather than assignment:

if (enoughtreats == true) {
...
}

或者简单地说:

if(enoughtreats) {
...
}

这篇关于如果语句总是给出相同的答案的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆