Java - public static double不返回

时间:2017-11-16 23:35:31

标签: java static public

我试图从零开始学习Java。我做了一个练习,经过一遍又一遍的阅读,我无法找到为什么不起作用。研究Google和StackOverflow的结果为零......

主要目标是通过乘以数字将美元转换为比塞塔。我必须使用两个函数并在" main"。

上调用它们

我的问题是" convertToPesetas"并没有取得" askDollars"的返回双倍。有人能给我一根绳子吗?

import java.util.Scanner;

public class Converter
{
    public static void main(String[] args){        
        askDollars();
        convertToPesetas();
    }       

    public static double askDollars(){
        System.out.println("Type the quantity of dollars:");
        Scanner keyboard= new Scanner(System.in);
        double dollars= keyboard.nextDouble();   
        System.out.println("Dollars: "+dollars);
        return dollars;        
    }
    public static double convertToPesetas(double dollars){        
        double pesetas = pesetas*166.386;        
        System.out.println(dollars+ "€ equals to: "+pesetas+" pesetas");
        return pesetas;
    }

}

1 个答案:

答案 0 :(得分:1)

因为您没有存储或提供该值:

askDollars();
convertToPesetas();

将返回的值保存在变量中,并将该变量传递给下一个方法:

double dollars = askDollars();
convertToPesetas(dollars);

注意:convertToPesetas也会返回一个值。你好像不需要它那样做。 但是,如果你的设计方向不同,你可以使用它。作为下一步的学术练习,请考虑以下三种方法:

  1. 要求用户输入的内容。
  2. 将美元价值转换为比塞塔值的人。这有 no 输入或输出,只是方法参数和返回值。
  3. 打印输出的一个。
  4. 每种方法都可以完成一件简单的事情。当你有这个时,你会发现第二种方法可以很容易地移动到其他对象等,因为它完全独立,不会以任何方式耦合到用户界面。

相关问题