我对Java还是很陌生,我一直在研究一些问题,并且大多数情况都还可以,但是我在这个问题上遇到了很多麻烦,要求我创建一个菜单来查找并显示有关圆的各种信息。我的代码如下:
import java.util.Scanner;
public class Circle2 {
public static void main(String[] args) {
final double pi = 3.1416;
Scanner values = new Scanner(System.in);
char response;
double area, perimeter, radius;
do // put code in loop
{
// offer menu of options
System.out.println();
System.out.println("*** CIRCLE MENU ***"); // create a blank line
System.out.println("[1] Set radius");
System.out.println("[2] Display radius");
System.out.println("[3] Display area");
System.out.println("[4] Display perimeter");
System.out.println("[5] Quit");
System.out.println("Enter choice [1,2,3,4,5}: ");
response = values.next().charAt(0); // get response
System.out.println(); // create a blank line
switch(response) // process response
{
case '1': System.out.println("Enter a value for the radius: ");
radius = values.nextDouble();
while(radius < 0)
{
System.out.println("Please enter a non-negative radius: ");
radius = values.nextDouble();
}
break;
case '2': System.out.println("The radius is " + radius);
break;
case '3': System.out.println("The area is " + (pi * radius * radius));
break;
case '4': System.out.println("The perimeter is " + (2 * pi * radius));
break;
case '5': System.out.println("Goodbye!");
break;
default: System.out.println("Options 1-5 only!");
}
} while (response != '5'); // test for Quit option
}
}
我一直遇到的错误是在switch情况下,我尝试将第一种情况放入if语句和其他方法中,但没有任何效果。我试图让用户输入情况1的半径,然后在其余情况下使用该值,但根本无法使用。这可能是我犯了一个非常愚蠢的错误,但是可以得到任何帮助,如果对本文做错了,对不起,这是我的不便,这是我被困了几个小时。
最佳答案
我将您的代码粘贴到Eclipse中。
唯一不起作用的是
以下变量需要初始化:
double area, perimeter, radius = 0;