解决方案和方法的图形输入和输出



我想为程序做一个输入和输出对话框。我尝试使用扫描仪实用程序,但我一直遇到错误,因此我想通过一个内和输出对话框将其图形化。如何制作一个输入对话框,该对话框需要N和K,并在使用Binomkoeff方法的输出对话框中放出它?我如何在对话框中使用INT参数或围绕对话进行操作?

package aufgabe2;
import java.util.Scanner;
import javax.swing.JOptionPane;
public class aufgabe2
{
    private static int binomkoeff(int n, int k)
    {
    if (k==0)
        return 1;
    else if (k>n-k)
        return binomkoeff(n, n-k);
    else
        return binomkoeff(n-1, k-1)*n/k;
}
public static void main(String[] args)
{
    //System.out.println(binomkoeff(6, 5));
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int k = sc.nextInt();
    //I'd rather have an input dialog than Scanner
    //System.out.println(binomkoeff(n, k));
    JOptionPane.showMessageDialog (binomkoeff(n, k);

    }
}

实际上没有问题。系统正在等待您的输入,只是尚未打开终端窗口。

当您使用System.in时,控制台正在等待InputSream 从终端窗口

另外,一个消息对话框不接受用户的输入 - 它仅显示消息。您应该使用InputDialog:

    String input = JOptionPane.showInputDialog(null, "Enter two numbers:");
    Scanner sc = new Scanner(input);
    int n = sc.nextInt();
    int k = sc.nextInt();
    JOptionPane.showMessageDialog(null, ""+binomkoeff(n, k));

input是被接受的字符串,即" 46 14"。

Scanner将输入字符串分开为n,该字符串变成46k,它变为14

最后一行向用户显示消息,调用您想要的方法。

相关内容

  • 没有找到相关文章

最新更新