编程语言
首页 > 编程语言> > 在Java中以其他方法使用局部声明的变量

在Java中以其他方法使用局部声明的变量

作者:互联网

我在做学校作业时遇到了一些困难,长话短说,我在一个方法中声明了两个局部变量,我需要在方法之外访问这些变量:

 public String convertHeightToFeetInches(String input){

    int height = Integer.parseInt(input); 
    int resultFeet = height / IN_PER_FOOT;
    int resultInches = height % IN_PER_FOOT;
    Math.floor(resultInches);
    return input;
}

我将不得不以不同的方法打印以下字符串:

    System.out.println("Height: " + resultFeet + " feet " + resultInches + " inches");

有什么建议么?

谢谢.

解决方法:

您不能在定义的范围之外访问局部变量.您需要更改方法返回的内容

首先定义一个容器类来保存结果…

public class FeetInch {

    private int feet;
    private int inches;

    public FeetInch(int feet, int inches) {
        this.feet = feet;
        this.inches = inches;
    }

    public int getFeet() {
        return feet;
    }

    public int getInches() {
        return inches;
    }

}

然后修改方法以创建并返回它…

public FeetInch convertHeightToFeetInches(String input) {
    int height = Integer.parseInt(input);
    int resultFeet = height / IN_PER_FOOT;
    int resultInches = height % IN_PER_FOOT;
    Math.floor(resultInches);
    return new FeetInch(resultFeet, resultInches);
}

标签:java,methods,local-variables
来源: https://codeday.me/bug/20191013/1905754.html