gpt4 book ai didi

java - JOptionPane 在阅读器后消失

转载 作者:行者123 更新时间:2023-11-30 02:37:10 24 4
gpt4 key购买 nike

我正在 JOptionePane 上进行双输入来计算矩形的面积。所以我需要用户先输入长度,然后输入宽度。但是,在第一次输入后,我在后面放置了一个阅读器,并且宽度的第二个 JOptionPane 没有弹出。我意识到这需要大量工作。

import java.util.Scanner;
import javax.swing.JOptionPane;


public class Project3_1 {

public static void main(String[] args) {

Scanner reader = new Scanner(System.in);
int length;
int width;
int surfacearea;

JOptionPane.showInputDialog("Enter the length of the edge: ");
length = reader.nextInt(); // doesnt work past this
JOptionPane.showInputDialog("Enter the width of the edge: ");
width = reader.nextInt();

surfacearea = length * width;

JFrame someFrame = new JFrame(); // how to insert surfacearea??
JLabel label = new JLabel();
someFrame.add(label);
someFrame.setSize(230, 230);
someFrame.setVisible(true);
}
}

最佳答案

您正在混合向程序输入数据的方法。让我们开始吧:

扫描仪阅读器 = new Scanner(System.in);

上面的行允许您从键盘捕获命令行中的数据。

JOptionPane.showInputDialog("Enter the length of edge: ");

此选项 Pane 显示正确,您输入一个值,然后没有任何反应。这是因为您的程序正在等待在命令行中输入某些内容

length=reader.nextInt();

当您的程序到达上面的行时,reader.nextInt()将停止程序,直到您在命令行中输入某些内容。

正确的方法应该是这样的:

length = Integer.parseInt(JOptionPane.showInputDialog("Enter the length of the edge: "));
width = Integer.parseInt(JOptionPane.showInputDialog("Enter the width of the edge:"));

并删除:

length = reader.nextInt();
width = reader.nextInt();

关于java - JOptionPane 在阅读器后消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42743573/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com