gpt4 book ai didi

Java 程序实现 boolean 而不是 not (!)

转载 作者:行者123 更新时间:2023-12-01 23:53:15 24 4
gpt4 key购买 nike

我不明白以下问题的额外得分问题。我已经实现了 try-catch 语句,并且似乎工作正常,但我们的讲师现在希望我们在循环条件中使用 boolean 变量而不是 data !=0。我猜:

while(data!=0.0)

但是这会如何运作呢?我是否完全摆脱它并只使用我已经创建的 boolean ? P.S.:我意识到这可能非常简单,但我只是没有看到它。

import java.util.*;

public class SumInput {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);

double data = 1.0;
double sum = 0.0;
boolean valid = false;
while (!valid) {
try {
while (data != 0.0) {
System.out.print("So far, sum = " + sum
+ "\nEnter a number or 0 to exit: ");
data = input.nextDouble();
sum = sum + data;
valid = true;
}
} catch (InputMismatchException e) {
System.out.println("Error--please enter a double number");
input.next();
} catch (NoSuchElementException e) {
System.out.println("\nGoodbye!");
System.exit(0);
}
}
System.out.println("Ending sum: " + sum);
}
}

最佳答案

我已经更新了您的程序,以使用 boolean 值而不是您的讲师所期望的 (data != 0.0)。找到下面的程序:

import java.util.*;

public class SumInput {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);

double data = 1.0;
double sum = 0.0;
boolean valid = false;
while (!valid) {
try {
while (true) {
System.out.print("So far, sum = " + sum
+ "\nEnter a number or 0 to exit: ");
data = input.nextDouble();
sum = sum + data;
valid = true;
if (data == 0.0) {
break;
}
}
} catch (InputMismatchException e) {
System.out.println("Error--please enter a double number");
input.next();
} catch (NoSuchElementException e) {
System.out.println("\nGoodbye!");
System.exit(0);
}
}
System.out.println("Ending sum: " + sum);
}
}

希望能解决您的问题!

关于Java 程序实现 boolean 而不是 not (!),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16031849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com