当前位置: 首页 > 知识库问答 >
问题:

Java-Void中的方法

申屠新觉
2023-03-14

我目前正在学习方法和使用方法。有时,在决定在参数中放入什么时,我会感到困惑。我有一些代码,我在其中创建了三个方法,它们都对应。我必须为这个程序做的是显示一些服务和价格,并询问用户是否愿意。如果他们说是的话,价格会一直累积到数组结束。在我的第三种方法中,我遇到的问题是如何从main获得价格。我知道我应该使用void方法,因为我没有返回任何东西,只是将价格打印给用户。以下是我的程序代码:

static Scanner keyboard = new Scanner(System.in);

public static void main(String[] args) {
    System.out.println("What automobile make do you own?");
    Scanner keyboard = new Scanner(System.in);

    String name = keyboard.nextLine();
    make(name);

    double price = carMaintenance(name);
    finalPrice(price);

}

// First Method
public static void make(String name) {
    System.out.println("Hello! We will be happy to service your " + name
            + " automobile today!");
}

// Second Method
public static double carMaintenance(String name) {
    String[] services = { "Oil Change", "Tire Rotation", "Air Filter",
            "Check Fluids" };
    double[] prices = { 39.99, 49.99, 19.99, 10.99 };
    double Total = 0;

    for (int i = 0; i < services.length; i++) {
        System.out.println("Do you want a " + services[i] + " for your "
                + name + " " + prices[i] + "? (y/n)");
        String answer;
        answer = keyboard.nextLine();
        if (answer.equals("y"))
        {
            Total = Total + prices[i];
        }
// Third method
    public static void finalPrice ( ? )

具体而言,这是我遇到问题的部分:

//第三种方法公开静态无效最终价格(双倍价格)

问题是finalPrice对于variabl来说是一个无效的类型,这让人很困惑。

共有3个答案

厉钊
2023-03-14

从汽车到最终通过双倍价格

double finalPriceDbl = carMaintenance(name);
finalprice(finalPriceDbl);

并接受double作为最终价格中的参数

public static void finalPrice ( double finalPrice );

您还应该使用return statemenet从carMaintenance返回值

return Total;
邬承悦
2023-03-14

第二种方法缺少返回语句。您可以将总数返回到main,然后将其发送到第三种方法,如下所示:

public static void main(String[] args) {
    System.out.println("What automobile make do you own?");
    Scanner keyboard = new Scanner(System.in);

    String name = keyboard.nextLine();
    make(name);

    double finalPrice = carMaintenance(name);
    printFinalPrice(finalPrice);
}

//first method code here

public static double carMaintenance(String name) {
    //second method code here, plus:
    return total;
}

// Third method
public static void printFinalPrice(double finalprice) {
    System.out.println("Your final price is " + finalprice);
}
燕和同
2023-03-14

您必须更改finalPrice()以接受一个参数:

public static void finalPrice(double price) { ... }

并将carMaintenance()返回的值传递给finalPrice()

double price = carMaintenance(name);
finalPrice(price);

请注意,我假设您只是忘记粘贴其余的car维护()方法。最后,当然,它应该有返回总语句。

 类似资料:
  • 本文向大家介绍Java编程中void方法的学习教程,包括了Java编程中void方法的学习教程的使用技巧和注意事项,需要的朋友参考一下 void 关键字 本节说明如何声明和调用一个void方法。 下面的例子声明了一个名为printGrade的方法,并且调用它来打印给定的分数。 示例 以上实例编译运行结果如下: 这里printGrade方法是一个void类型方法,它不返回值。 一个void方法的调用

  • 问题内容: 我正在查看路径查找教程,并且注意到方法内的一条语句(class ,行126): 我是Java的新手。谁能告诉我为什么它在那里?据我所知,内部不允许使用void方法。 问题答案: 它只是在此时退出该方法。一旦执行,其余代码将不会执行。 例如。 请注意,编译器足够聪明,可以告诉您某些代码无法到达:

  • 我相信这是一个愚蠢的问题,但我已经讨论了很久了。。我试图创建一个java程序,根据用户输入的年数和金额计算复利。但我一直遇到一个错误,void方法无法返回值。因此,我将方法切换为double,因为这是将返回的内容,但它告诉我double方法必须返回double。即使我在循环中返回一个双倍。。。请帮忙

  • 问题内容: 我正在为apache HttpClient包实现一个,如下所示: 但我希望函数不返回任何值,即。这可能吗?由于不是有效的Java类型,因此以下内容无法编译: 我想可以替换为以返回对象,但这并不是我真正想要的。 问 :是否有可能安排在这样一种方式,我可以返回此回调局面从? 问题答案: 泛型仅处理对象类。泛型不支持void和基本类型,您不能将它们用作参数化类型。您必须改用Void。 你能说

  • 本文向大家介绍Java File类void deleteOnExit()方法(带示例),包括了Java File类void deleteOnExit()方法(带示例)的使用技巧和注意事项,需要的朋友参考一下 文件类无效 软件包java.io.File.deleteOnExit()中提供了此方法。 虚拟机终止时,此方法用于删除文件或目录。 此方法的返回类型为void,因此它不返回任何内容。 在此方法

  • 我的C代码无法找到Java中的公共静态函数调用。它成功地找到了类,没有错误。 我试图将结果返回给回调方法。“5”稍后将被更复杂的内容取代。 我在StackOverflow上似乎也有类似的问题,但是到目前为止没有任何变化似乎有所帮助。也许我有逻辑错误? 我的JNI(更新#2): 此代码包含在此函数中调用的方法中: 我的Java(更新#1): 签名检查: javap-s-pcecutils 公共静态响