Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Can';我不能让JOptionPane和System.out.println在学费计算器中工作_Java_Swing_Joptionpane - Fatal编程技术网

Java Can';我不能让JOptionPane和System.out.println在学费计算器中工作

Java Can';我不能让JOptionPane和System.out.println在学费计算器中工作,java,swing,joptionpane,Java,Swing,Joptionpane,当我执行代码时,它应该要求我输入当前要获得的学分数和每个学分的成本。在我输入这些之后,总结果应该出现在一个新窗口中,并显示短语“学分的成本是*(答案应该从公式“学费=学分*costPerCredit;”)中得出)*.这个数字结果应该是我在第一个对话框中输入的数字,预设为$107.78,我希望这些答案出现在最后弹出的新窗口中。但我得到的只是 import java.io.*; import javax.swing.JOptionPane; import java.text.DecimalForma

当我执行代码时,它应该要求我输入当前要获得的学分数和每个学分的成本。在我输入这些之后,总结果应该出现在一个新窗口中,并显示短语“学分的成本是*(答案应该从公式“学费=学分*costPerCredit;”)中得出)*.这个数字结果应该是我在第一个对话框中输入的数字,预设为$107.78,我希望这些答案出现在最后弹出的新窗口中。但我得到的只是

import java.io.*;
import javax.swing.JOptionPane;
import java.text.DecimalFormat;

public class Tuition
{
    public static void main(String[] args)
    {
        //Declareing the variables
        int credits;
        double costPerCredit;
        double tuition;

        //calling methods
        credits = getCredits();
        costPerCredit = getCostPerCredit(credits);
        tuition = calcTuition(credits, costPerCredit);
        displayCredits(costPerCredit);
        displayTotal(tuition);


        //Dialog box that is popping out to ask the questions and get imput based on questions
        JOptionPane.showMessageDialog(null, "Java Tuition Calculator Program");
    }

    public static int getCredits()
    {
        //declare hours variable
        String input;
        int credits = 0;
        input = JOptionPane.showInputDialog(null,"Number of Credits?");

        return credits;
    }

    public static double getCostPerCredit(int credits)
    {
        String input1;
        double costPerCredit;
        costPerCredit = credits * 107.78;
        input1 = JOptionPane.showInputDialog(null,"Cost Per Credit?");

        return costPerCredit;
    }

    public static double calcTuition(int credits, double costPerCredit)
    {
        double tuition;

        tuition = credits * costPerCredit;
        return tuition;
    }


    public static void displayCredits(double costPerCredit)
    {
        double credits;
        credits = costPerCredit;

        DecimalFormat twoDigits = new DecimalFormat("$#000.00");
        System.out.println("Cost for Credits are " + credits);
    }

    public static void displayTotal(double tuition) 
    {
        double total;
        total = tuition;

        DecimalFormat twoDigits = new DecimalFormat("$#000.00");
        System.out.println("Your Tuition is " + total);
    }
}
为什么我不能让System.out.println从
public static double getCostPerCredit(int credit)
public static int getCredits()
打印出答案?这两个选项都会弹出对话框,询问字段中的问题,但我希望打印出这些答案,而不仅仅是得到“0.0”的答案

注意:我取出了
stringinput1;
input1=JOptionPane.showInputDialog(null,“每学分成本?”);
。代码似乎与它的工作方式相同,但对话框被删除

Cost for Credits are 0.0
Your Tuition is 0.0
积分
从未更改。此代码始终返回
0

无法使JOptionPane和System.out.println在中工作 计算器

String input;
int credits = 0;
input = JOptionPane.showInputDialog(null,"Number of Credits?");

return credits;

看起来您需要学习使用调试器。请自己解决一些问题。如果以后仍有问题,请随时提出更具体的问题。欢迎来到Stack Overflow!请继续阅读。您的问题应该是具体的,您的相关代码应该是具体的。谢谢您,John Kugelman和Soumya Das,谢谢您的帮助非常感谢。再次谢谢你
First: Cost for Credits are 0.0 because of int credits = 0; and you return credits 0 as type int

Second: Any thing multiply by 0.0 is 0.0 as type double, So Your Tuition is 0.0
public static int getCredits()
    {
        //declare hours variable
        String input;
        int credits = 0;
        input = JOptionPane.showInputDialog(null,"Number of Credits?");

        return Integer.parseInt(input);
    }