如何在与调用方法不同的另一种方法中使用方法的返回值?

时间:2015-07-16 19:58:38

标签: java

我对java很新,偶然发现了一个需要我进行货币转换的问题,声明了不同的方法: 获得金额,获得转换率,进行实际转换并打印转换结果

on_connect

3 个答案:

答案 0 :(得分:1)

学习使用方法中的参数。更改convert()方法,使其如下所示:

public static double convert(double amount, double rate){
    int x = amount*rate;
    return x;
}

在上述方法中,double amountdouble rate是参数。使用变量帮助将参数传递给main方法中的convert()

public static void main(String[] args){
   double amount1 = amountToConvert();
   double rate1 = exchangeRate(); 
   double result = convert(amount1, rate1);
   printResult(result);
}

希望这有帮助!

答案 1 :(得分:1)

将返回值传递给方法convert

import java.util.*;

public class Conver {
    public static void main(String[] args){
        double amount = amountToConvert();
        double rate = exchangeRate(); 
        double result = convert(amount, rate);
        printResult(result);
    }

    public static double amountToConvert() {
        Scanner input = new Scanner(System.in);
        System.out.println("Enter the amount you wish to convert...");
        double amount = input.nextDouble();
        return amount;
    }

    public static double exchangeRate(){
        Scanner input = new Scanner(System.in);
        System.out.println("Enter the currency you wish to convert from... ");
        String initialCurrency = input.next();
        System.out.println("Enter the currency you wish to convert from... ");
        String finalCurrency = input.next();
        System.out.println("How many " + initialCurrency + " makes one " + finalCurrency + "?");
        double rate = input.nextDouble();
        return rate;
    } 

    public static double convert(double amount, double rate){
        double x = amount * rate;
        return x;
    }

    public void printResult(double x){
        System.out.println(x);
    }
}

此外,don't use double for money!

答案 2 :(得分:1)

首先,你需要改变“接收方法”,以便它接受一个参数。一种方法,如:

public static double convert() {} 

需要获取金额和费率的值,需要将其添加到方法签名中:

public static double convert (double amount, double rate) {}

将两个逗号分隔的值放在parens中意味着此方法将两个值(double)作为参数。这使得这些值可以在该方法中使用。

既然你有一个可以获取所需参数的方法,你需要在代码中实际使用该方法。调用此方法时,您的启动方式与其他方法相同:

convert(

但是你需要添加你正在使用的参数:

double amount = amountToConvert();
double rate = exchangeRate();
convert(rate, amount);

如果你想避免在main()中创建这两个额外的变量,你实际上可以在新方法中调用这些方法:

convert(amountToConvert(), exchangeRate());
相关问题