所以,这是我第一次来到这里,我从Java开始,这应该是一个非常愚蠢的错误,但我无法找到为什么我的程序在进入while部分时卡住了。这是一个我询问姓名和年龄的程序,但它不能是负数,所以当发生这种情况时,我必须显示messageDialog说的。
package guia1;
import java.util.*;
import javax.swing.JOptionPane;
/**
*
* @author Paris
*/
public class LecturaConsola {
public static void main(String args[]){
Scanner reader = new Scanner(System.in);
String nombre = "";
int edad;
System.out.print("Ingrese su nombre: ");
nombre=reader.nextLine();
System.out.print("Ingrese su edad: ");
edad=reader.nextInt();
while(edad<0){ //error here
JOptionPane.showMessageDialog(null, "No se permite ingresar una edad negativa, favor ingresela nuevamente.");
System.out.print("Ingrese su edad: ");
edad=reader.nextInt();
}
System.out.println("Nombre: "+nombre);
System.out.println("Edad: "+edad);
}
}
当我输入一个正确的数字时它会很顺利,但是当我输入一个负数时,MessageDialog没有显示,程序卡住了,有什么建议吗?
PD。抱歉我的英文。
编辑:我正在输入此数据,
Paris Forrer
-22
它会卡住,但如果我试试,
Paris Forrer
22
工作我不知道为什么我的messageDialog工作如果我在输入任何信息之前把它放在之后,有没有机会我可能没有补充或类似的东西?