扫描仪和 JOptionPane 不能一起正常工作

Scanner and JOptionPane not working properly together

我有一个 Scanner,我正在从控制台获取星期几,然后我想在 JOptionPane.showMessageDialog 方法中显示日期,但它不起作用。

public class TestClass {

   public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);

        String day = scan.nextLine();

        JOptionPane.showMessageDialog(null, day);
   }
}

怎么了?

提前致谢。

作为一个临时解决方案,您可以创建一个 JFrame 并使用该框架调用 JOptionpane 作为它的父组件。

import javax.swing.*
// Other imp code
JFrame m = new JFrame();
JOptionpane.showMessageDialog(m,day);

不确定这是否有帮助,但我发现您的代码没有问题。分享我的尝试,也许这会帮助您调试问题。

package simple.concepts.com;

import java.util.Scanner;

import javax.swing.JOptionPane;

public class Test {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);

        System.out.println("Enter day");
        String day = scan.nextLine();

        JOptionPane.showMessageDialog(null, day);
        scan.close();
    }
}

同时提供输入:

Enter day : Monday

(按回车键)

您应该会看到带有 'Monday'

的弹出窗口

编辑:

使用管理权限尝试 运行ning eclipse。重新启动并再次 运行。另外运行程序一次,最小化所有windows,你应该能看到。它不断接受输入,直到并且除非您关闭弹出窗口。