Java 输入/输出-算术方程

Java 输入/输出-算术方程,java,swing,input,output,Java,Swing,Input,Output,我是Java的新手,两周前就开始学习了,在这个问题上我遇到了很多问题。我在上的一门课上遇到了一个以前提过的问题。将千克转换为磅,并四舍五入到小数点后第二位 我可以创建物品的输入端,并打开一个对话框提示用户输入重量。我还可以创建一个输出,使用我创建的方程式在对话框中输出答案 我的问题是如何获取输入的信息并使用它将千克转换为磅 我一直在读我的书,在网上搜索,试图找到一个答案,我想我可能想得太多了。谢谢你的帮助 Input.java: //This program asks a user to inp

我是Java的新手,两周前就开始学习了,在这个问题上我遇到了很多问题。我在上的一门课上遇到了一个以前提过的问题。将千克转换为磅,并四舍五入到小数点后第二位

我可以创建物品的输入端,并打开一个对话框提示用户输入重量。我还可以创建一个输出,使用我创建的方程式在对话框中输出答案

我的问题是如何获取输入的信息并使用它将千克转换为磅

我一直在读我的书,在网上搜索,试图找到一个答案,我想我可能想得太多了。谢谢你的帮助

Input.java

//This program asks a user to input a weight in kilograms.

package module2;

import javax.swing.*;

public class Input {

    public static void main(String[] args) {

        String weight;

        weight = JOptionPane.showInputDialog("Enter weight in kilograms");
    }
}
//This program outputs a converted weight from kilograms to pounds.

package module2;

import javax.swing.JOptionPane;

public class Output {

    public static void main(String[] args) {

        double kg = 75.5;
        double lb = 2.2;
        double sum;

        sum = (kg * lb);

        JOptionPane.showMessageDialog(null,sum, "Weight Conversion", JOptionPane.INFORMATION_MESSAGE);
    }
}
Output.java

//This program asks a user to input a weight in kilograms.

package module2;

import javax.swing.*;

public class Input {

    public static void main(String[] args) {

        String weight;

        weight = JOptionPane.showInputDialog("Enter weight in kilograms");
    }
}
//This program outputs a converted weight from kilograms to pounds.

package module2;

import javax.swing.JOptionPane;

public class Output {

    public static void main(String[] args) {

        double kg = 75.5;
        double lb = 2.2;
        double sum;

        sum = (kg * lb);

        JOptionPane.showMessageDialog(null,sum, "Weight Conversion", JOptionPane.INFORMATION_MESSAGE);
    }
}

现在你有两个主要的方法。这两个都是该计划的切入点。因为他们必须共享信息,所以你两者都有是没有意义的

我建议将
输出
的主要方法更改为实例方法,从
输入
中获取一个参数:
权重

// addition of two integers using JOptionPane
import javax.swing.JOptionPane; 

public class Addition

{

   public static void main(String[] args)

  {

    String firstNumber = JOptionPane.showInputDialog("Input <First Integer>");
    String secondNumber = JOptionPane.showInputDialog("Input <Second Integer>");
    int num1 = Integer.parseInt(firstNumber);
    int num2 = Integer.parseInt(secondNumber);
    int sum = num1 + num2;
    JOptionPane.showMessageDialog(null, "Sum is" + sum, "Sumof two Integers", JOptionPane.PLAIN_MESSAGE);
  }
}
像这样:

public void printOutput(final double weight){
    //...
}
然后,您可以从
输入
的主方法调用它,如下所示:

public static void main(String[] args) {

    String weight;

    weight = JOptionPane.showInputDialog("Enter weight in kilograms");

    double kg = Double.parseDouble(weight); // Be sure to parse the weight to a number
    Output output = new Output(); // Create a new instance of the Output class

    output.printOutput(kg); // Call our method to display the output of the conversion
}

另一件事是,既然 >输出< /代码>目前只适用于这一种方法,您可以考虑将该方法移动到<代码>输入< /代码> .< /p> <代码> //使用joptPANGe添加两个整数。

// addition of two integers using JOptionPane
import javax.swing.JOptionPane; 

public class Addition

{

   public static void main(String[] args)

  {

    String firstNumber = JOptionPane.showInputDialog("Input <First Integer>");
    String secondNumber = JOptionPane.showInputDialog("Input <Second Integer>");
    int num1 = Integer.parseInt(firstNumber);
    int num2 = Integer.parseInt(secondNumber);
    int sum = num1 + num2;
    JOptionPane.showMessageDialog(null, "Sum is" + sum, "Sumof two Integers", JOptionPane.PLAIN_MESSAGE);
  }
}
导入javax.swing.JOptionPane; 公共类添加 { 公共静态void main(字符串[]args) { String firstNumber=JOptionPane.showInputDialog(“输入”); String secondNumber=JOptionPane.showInputDialog(“输入”); int num1=Integer.parseInt(firstNumber); int num2=Integer.parseInt(第二个数字); 整数和=num1+num2; showMessageDialog(null,“总和为”+Sum,“两个整数之和”,JOptionPane.PLAIN_消息); } }
对于starter,您不能有两个主要方法。@RichN您可以,但每个实例只能运行一个。你可以随时调用另一个,但那是一件坏事。@Obicere啊,是的,当然。我采用了使用
main
方法的“正常”方式。此外,如果你有足够的知识来做这件事,你可能不会把它们写成
main
方法。非常感谢你的帮助。这些Java内容需要大量的吸收和整理。当你说Double.parseDouble(weight)特别是parseDouble是什么意思?再次感谢您的帮助。@Ph1shPhryd
weight
是一个
字符串。只是一个字符列表。你不能把它当作一个数字来加、乘、除。相反,您可以调用Java库获取该字符串并对其进行解析。然后返回一个
双精度
,这是一个数字。所以你可以这样使用它,这是有道理的。因此,当我现在运行程序时,无论我输入什么,答案始终保持不变。我正试图解决这个问题,但似乎被卡住了。关于为什么会发生这种情况有什么想法吗?@Ph1shPhryd很可能您仍然使用最初设置为
kg
的值,而不是参数
weight
@Ph1shPhryd通常将其分解为较小的离散问题。举个例子:1。从用户处读取双倍重量,2。执行转换,3。向用户显示结果的输出。通过这种方式,你可以专注于一个程序的一个部分,对它进行全面的测试,并真正限制出现错误的机会。在你的答案中添加一些进一步的信息