在 for (Array - java) 上创建条件
Create a condition on a for (Array - java)
我想为变量创建条件 "int edad" 但我很困惑...
我特别需要这一行的条件
Integer.parseInt(JOptionPane.showInputDialog("Ingrese edad")),
这是一个 int 变量,我想验证它在 0 到 100 之间,然后给用户一个消息并再次询问这个变量。
package pruebas;
import javax.swing.JOptionPane;
public class Persona {
public static void main(String[] args) {
Estudiante [] misEstudiantes2 = new Estudiante[1];
for(int i = 0; i< misEstudiantes2.length; i++){
misEstudiantes2[i] = new Estudiante(JOptionPane.showInputDialog("Ingrese nombre").toUpperCase(),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese edad")),
JOptionPane.showInputDialog("Ingrese carrera"),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese año")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese dia")),
Double.parseDouble(JOptionPane.showInputDialog("Ingrese sueldo")));
misEstudiantes2[i].estableceSueldo(1);
System.out.println("Objetos del array \n" + misEstudiantes2[i].dameNombre() + "\n" + misEstudiantes2[i].dameSueldo() + "\n" +
misEstudiantes2[i].dameCarrera() + "\n" + misEstudiantes2[i].dameFecha() + "\n" + "La edad es " + misEstudiantes2[i].dameEdad());
}
}
}
如果在构造新学生对象之前将所有用户输入存储到变量中,这是可能的。
String name = JOptionPane.showInputDialog("Ingrese nombre").toUpperCase();
int age = Integer.parseInt(JOptionPane.showInputDialog("Ingrese edad"));
String career = JOptionPane.showInputDialog("Ingrese carrera");
int year = Integer.parseInt(JOptionPane.showInputDialog("Ingrese año"));
int month = Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes"));
int day = Integer.parseInt(JOptionPane.showInputDialog("Ingrese dia"));
double salary = Double.parseDouble(JOptionPane.showInputDialog("Ingrese sueldo")));
misEstudiantes2[i] = new Estudiante(name, age, career, year, month, day, salary);
在这里,您可以对变量进行任何必要的检查。例如:
int age = Integer.parseInt(JOptionPage.showInputDialog("Ingrese edad"));
while (age < 0 || age > 100) { // in case they put in an invalid number
// try again, with a notice about the range
age = Integer.parseInt(JOptionPage.showInputDialog("Ingrese edad, mas de 0 y menos de 100"));
}
试着写一个方法来为你做这件事。例如:
public static Integer promptForInteger(int min, int max, String message, String message2) {
Integer result = Integer.parseInt(JOptionPane.showInputDialog(message));
while(result < min || result > max) {
result = Integer.parseInt(JOptionPane.showInputDialog(message2));
}
return result;
}
然后在创建对象时调用它:
misEstudiantes2[i] = new Estudiante(JOptionPane.showInputDialog("Ingrese nombre").toUpperCase(),
promptForInteger(0, 100, "Ingrese edad", "Ingrese edad, mas de 0 y menos de 100"),
JOptionPane.showInputDialog("Ingrese carrera"),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese año")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese dia")),
Double.parseDouble(JOptionPane.showInputDialog("Ingrese sueldo")));
我不懂您的母语,所以我使用了 johnhopkinses 答案中的字符串。
帮用户一个忙,为他们提供一个微调器以 select 号码。
import javax.swing.*;
class VerifiedIntegerInRange {
public VerifiedIntegerInRange() {
SpinnerNumberModel numberRange = new SpinnerNumberModel(-1,-1,100,1);
JSpinner spinner = new JSpinner(numberRange);
int i = numberRange.getNumber().intValue();
while (i<0) {
JOptionPane.showMessageDialog(
null,
spinner,
"Select a number between 0 & 100",
JOptionPane.QUESTION_MESSAGE);
i = numberRange.getNumber().intValue();
}
System.out.println("User chose " + i);
}
public static void main(String[] args) {
Runnable r = new Runnable() {
public void run() {
new VerifiedIntegerInRange();
}
};
SwingUtilities.invokeLater(r);
}
}
我想为变量创建条件 "int edad" 但我很困惑...
我特别需要这一行的条件
Integer.parseInt(JOptionPane.showInputDialog("Ingrese edad")),
这是一个 int 变量,我想验证它在 0 到 100 之间,然后给用户一个消息并再次询问这个变量。
package pruebas;
import javax.swing.JOptionPane;
public class Persona {
public static void main(String[] args) {
Estudiante [] misEstudiantes2 = new Estudiante[1];
for(int i = 0; i< misEstudiantes2.length; i++){
misEstudiantes2[i] = new Estudiante(JOptionPane.showInputDialog("Ingrese nombre").toUpperCase(),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese edad")),
JOptionPane.showInputDialog("Ingrese carrera"),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese año")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese dia")),
Double.parseDouble(JOptionPane.showInputDialog("Ingrese sueldo")));
misEstudiantes2[i].estableceSueldo(1);
System.out.println("Objetos del array \n" + misEstudiantes2[i].dameNombre() + "\n" + misEstudiantes2[i].dameSueldo() + "\n" +
misEstudiantes2[i].dameCarrera() + "\n" + misEstudiantes2[i].dameFecha() + "\n" + "La edad es " + misEstudiantes2[i].dameEdad());
}
}
}
如果在构造新学生对象之前将所有用户输入存储到变量中,这是可能的。
String name = JOptionPane.showInputDialog("Ingrese nombre").toUpperCase();
int age = Integer.parseInt(JOptionPane.showInputDialog("Ingrese edad"));
String career = JOptionPane.showInputDialog("Ingrese carrera");
int year = Integer.parseInt(JOptionPane.showInputDialog("Ingrese año"));
int month = Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes"));
int day = Integer.parseInt(JOptionPane.showInputDialog("Ingrese dia"));
double salary = Double.parseDouble(JOptionPane.showInputDialog("Ingrese sueldo")));
misEstudiantes2[i] = new Estudiante(name, age, career, year, month, day, salary);
在这里,您可以对变量进行任何必要的检查。例如:
int age = Integer.parseInt(JOptionPage.showInputDialog("Ingrese edad"));
while (age < 0 || age > 100) { // in case they put in an invalid number
// try again, with a notice about the range
age = Integer.parseInt(JOptionPage.showInputDialog("Ingrese edad, mas de 0 y menos de 100"));
}
试着写一个方法来为你做这件事。例如:
public static Integer promptForInteger(int min, int max, String message, String message2) {
Integer result = Integer.parseInt(JOptionPane.showInputDialog(message));
while(result < min || result > max) {
result = Integer.parseInt(JOptionPane.showInputDialog(message2));
}
return result;
}
然后在创建对象时调用它:
misEstudiantes2[i] = new Estudiante(JOptionPane.showInputDialog("Ingrese nombre").toUpperCase(),
promptForInteger(0, 100, "Ingrese edad", "Ingrese edad, mas de 0 y menos de 100"),
JOptionPane.showInputDialog("Ingrese carrera"),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese año")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes")),
Integer.parseInt(JOptionPane.showInputDialog("Ingrese dia")),
Double.parseDouble(JOptionPane.showInputDialog("Ingrese sueldo")));
我不懂您的母语,所以我使用了 johnhopkinses 答案中的字符串。
帮用户一个忙,为他们提供一个微调器以 select 号码。
import javax.swing.*;
class VerifiedIntegerInRange {
public VerifiedIntegerInRange() {
SpinnerNumberModel numberRange = new SpinnerNumberModel(-1,-1,100,1);
JSpinner spinner = new JSpinner(numberRange);
int i = numberRange.getNumber().intValue();
while (i<0) {
JOptionPane.showMessageDialog(
null,
spinner,
"Select a number between 0 & 100",
JOptionPane.QUESTION_MESSAGE);
i = numberRange.getNumber().intValue();
}
System.out.println("User chose " + i);
}
public static void main(String[] args) {
Runnable r = new Runnable() {
public void run() {
new VerifiedIntegerInRange();
}
};
SwingUtilities.invokeLater(r);
}
}