首页 > 解决方案 > do-while 循环只能与布尔变量一起运行吗?爪哇

问题描述

我在这个小部分遇到了一些麻烦。do-while 循环只能使用布尔变量运行吗?我试图让“用户”输入“0”或“1”,以便程序循环或结束。

错误信息:

Chapter4Practice.java:23: 错误:不兼容的类型:int 不能转换为布尔值 } while (choice = 1); ^ 1 个错误

我的代码:

import java.util.Scanner;

public class Chapter4Practice
{
    public static void main(String[] args)
    {
        int choice, num1, num2;
        String input;
        Scanner sc = new Scanner(System.in);

        do {
            System.out.print("Enter a number: "); 
            num1 = sc.nextInt();
            System.out.print("Enter another number: ");
            num2 = sc.nextInt();
            System.out.println("The sum is " + (num1 + num2));
            System.out.println("Do you want to do this again?");
            System.out.println("(1 = yes, 0 = no)");
            sc.nextLine();
            choice = sc.nextInt();
        } while (choice = 1);
    } //End Main

} //End Class

标签: javabooleando-while

解决方案


简短的回答:是的,你可以在你的 do-while 中有简单或复杂的语句,但最后它必须评估为真或假

您的陈述也应该是 == (单 = 表示分配,其中 == 是评估)


推荐阅读