gpt4 book ai didi

java - 如何修复有关 switch 语句的输出?

转载 作者:行者123 更新时间:2023-12-01 18:13:40 27 4
gpt4 key购买 nike

我的程序输出遇到一些问题。应该发生的是用户要选择他们想要使用的方法。然后,程序将根据该选择执行 switch 语句,并为用户输入的任何方法和值输出相应的和或乘积。

但是,程序显示菜单选择,但仅输出错误消息。我遇到这个错误已经有一段时间了,但老实说我不知道​​我做错了什么。请您原谅我的无知,因为我编程时间不长。

import java.util.Scanner;
public class Sum {
public static void main(String[] args)
{
String sum = "S";
String factorial = "F";

Scanner scan = new Scanner(System.in);
System.out.println("Enter " + sum + " to use the sum method or " + factorial + " to use the factorial method.");
String userSelection = scan.next();

switch (userSelection.toLowerCase()) {
case "sum":
System.out.println("Enter the number you want to use: ");
int userValue = scan.nextInt();
int userSum = sum(userValue);
System.out.println("The resulting value for the sum method is: " + userSum);
break;

case "fact":
System.out.println("Enter the number you want to use: ");
int userFact = scan.nextInt();
int userFactorial = fact(userFact);
System.out.println("The resulting value for the factorial method is: " + userFactorial);
break;
default:
System.out.println("ERROR: Invalid choice.");
}
scan.close();
}
public static int sum(int num) {
int sum = 0;
for (int i = 1; i <= num; i++) {
sum = i + sum;
}
return sum;
}
public static int fact(int num) {
int fact = 1;
for (int i = 1; i <= num; i++) {
fact = i * fact;
}
return fact;
}

最佳答案

您正在将用户输入与错误的字符串进行比较。您要求他输入“S”或“F”,然后将此输入与“sum”和“fact”进行比较。

关于java - 如何修复有关 switch 语句的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60416284/

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