运行代码的问题

时间:2015-03-19 23:59:13

标签: java

我是这个网站的新手,我需要一些帮助,我正在努力练习。我正在尝试运行一个'if-else'程序,询问半径或直径,然后输出周长。我已经有了一个非常基本的开始,但即使在互联网上寻找答案,我仍然感到困惑。

这是代码

import java.util.Scanner;
class Circumference
{
public static void main(String[] args)
{
    double radius;
    double diameter;
    double c1 = (3.14 * (radius * radius));
    double c2 = (3.14 * diameter);
    Scanner in = new Scanner(System.in);
    String answer = String.valueOf(1);

    System.out.println("Do you have the radius, y/n?");
    answer = in.nextLine();
    {
        if(answer.equalsIgnoreCase("y"))
        {
            System.out.println("Then give me the radius");
            float radius = in.nextInt();
            System.out.println("Circumference is : " + c1);
            {
                else if(answer.equalsIgnoreCase("n"))
                {
                    System.out.println("Do you know the diameter then, y/n?");
                    string answer = in.nextLine();
                    {
                        else if(answer.equalsIgnoreCase("y"))
                        {
                            System.out.println("Then input the diameter");
                            float diameter = in.nextInt();
                            System.out.println("Circumference is : " + c2);
                            {
                                else if(answer.equalsIgnoreCase("n"))
                                {
                                    System.out.println("Then find it");
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

当我尝试更改字符串时,它将无法识别它并说“无法将字符串更改为int”,或者执行时无法找到“c1”中的半径。

感谢所有帮助!

1 个答案:

答案 0 :(得分:0)

通过查看代码,很明显你是java的新手。 就像@ m0skit0所说:

  

我们理解你很新,但这是学习Java的错误地方。

您对java的基本约定的理解存在根本缺陷,例如if / else和变量声明/初始化的概念。我建议你和你的教授或者教你java的人谈谈。您提供的程序根本无法正确编译。编译器错误应该很容易修复,因为大多数IDE基本上都是为你修复它们... 以下是您必须解决的一些问题:

第19行:float radius = in.nextInt(); 在这里,您要声明并初始化一个名为radius的浮点数,但您已经有一个名为radius的双精度数。您不能在java中使用相同名称的变量。

第21行:由于某些我不知道的原因,你插入一个永不关闭的{。那支撑没有任何意义,也是多余的。

第22行:如果没有if,你就无法拥有其他。

在第25行:String是一个类,因此大写,与C不同。为什么在已经声明一个时创建一个名为answer的新String?再一次,您不能拥有相同名称的变量。

第26行:另一个完全不必要的大括号。

第30行:第三次,你不能将多个变量命名为相同的东西。

第32行:另一个完全无用的支撑。

第33行:如果没有if,你就无法拥有其他。