将高度转换为英寸(Java)

时间:2015-04-07 02:28:45

标签: java java.util.scanner

我的代码输出有问题。似乎我在我创建的方法中遗漏了一些东西...我有指示返回总英寸数。我在返回后放置totInches并得到一个错误,指出totInches不是变量。不确定这里缺少什么,因为我只应该创建一个方法。大部分代码都是编写的,我应该创建的唯一部分是第二个convertToInches方法。任何建议?

import java.util.Scanner;

public class FunctionOverloadToInches {

   public static double convertToInches(double numFeet) {
      return numFeet * 12.0;
   }

   public static double convertToInches(double numFeet, double numInches) {
      return totInches * 12.0;
   }

   public static void main (String [] args) {
      double totInches = 0.0;

      totInches = convertToInches(4.0, 6.0);
      System.out.println("4.0, 6.0 yields " + totInches);

      totInches = convertToInches(5.9);
      System.out.println("5.9 yields " + totInches);
      return;
   }
}

2 个答案:

答案 0 :(得分:1)

变量totInches未在函数范围内定义:

public static double convertToInches(double numFeet, double numInches) {
  return totInches * 12.0;
}

您可以在此函数中使用的唯一变量是您创建的变量和定义为形式参数的变量:numFeetnumInches。因此,考虑到numFeet中提供的额外英寸,您必须提出一个取numInches并将其转换为英寸的等式。

答案 1 :(得分:0)

你声明了双变量" totInches"在你的main方法中,你试图在你的" convertToInches"内部访问它。方法。在特定方法中声明变量时,该方法只能访问该变量。你的" convertToInches"只知道两个变量:numFeet和numInches,它们在参数中传递给它。然后它会查看你的退货声明,看到" totInches"并且不知道它是什么。

我也不明白这是怎么回事......

     public static double convertToInches(double numFeet, double numInches) {
      return totInches * 12.0;
   }

为什么要传递双变量numFeet和numInches?该功能不使用它们。我也不明白为什么你需要脚数和英寸数,如果这个方法的名称试图将某些东西转换成英寸。