Вводить данные в компьютер из-за клавиатуры и посылать их строителю как параметры

Моя консультация проистекает, того, что я хочу попросить у пользователя вводить в компьютер из-за клавиатуры данные ученика, и потом использовать параметры, введенные в компьютер, чтобы посылать их строительному Ученику. Каков способ это делать?

Alumno.java

public class Alumno {

    private String nom = "null";
    private String ap = "null";
    private String dni = "null";
    private String tel = "null";

    public Alumno(String nom,String ap, String dni, String tel){
        this.nom = nom;
        this.ap = ap;
        this.dni = dni;
        this.tel = tel;
    }

    public void mostrarAlum(){
        System.out.println("Alumno: "+nom+" Apellido: "+ape+" DNI: "+dni+"  Telefono: "+tel);
    }
}

EjercicioModelarObjetos.java

package ejerciciomodelarobjetos;

import java.io.BufferedReader;
import java.io.InputStreamReader;

/**
 *
 * @autor jorge
 */
public class EjercicioModelarObjetos {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        //TODO code application logic here
        System.out.println("Ingresee los datos correspondientes:");
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        //System.out.print("Nombre:");
        Alumno alu = new Alumno(nom, ap, dni, tel);
    }

}
2
задан 13.01.2016, 23:27
3 ответа

Java обладает классом Scanner :

//Inicializamos el escáner
Scanner scanner = new Scanner(System.in);

//Pedimos los datos del estudiante
System.out.print("Ingresa nombre del alumno: ");
String studentName = scanner.nextLine();
System.out.print("Ingresa apellido del alumno: ");
String studentLastname = scanner.nextLine();
System.out.print("Ingresa dni del alumno: ");
String studentDni = scanner.nextLine();
System.out.print("Ingresa teléfono del alumno: ");
String studentPhone = scanner.nextLine();

//Aquí llamamos al constructor
Alumno alumno = new Alumno(studentName, studentLastname, studentDni, studentPhone);

AsГ, - как ты просишь данные с клавиатуры в конечной остановке.

6
ответ дан 24.11.2019, 14:59
  • 1
    Он не знал, что был класс scanner помимо BufferedReader для ввода данных, спасибо за hac и # 233; rmelo знать, кажется гораздо более простым. – Jorge Gonzalez 13.01.2016, 23:37

Ты должен создавать программу, которая просила бы данные и однажды вернувшие, он призвал строителя.

Как просить данные у пользователя изменится в зависимости от типа программы, которую ты используешь.

Следующий код - пример (упрощенного) консольного приложения.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Program {

 public static void main(String[] args) throws IOException {

    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

    System.out.print("Introduzca Nombre ");
    String nombre = reader.readLine();
    //... lo mismo para las demás propiedades

    Alumno alum = new Alumno(nombre,apellido, dni, telefono);
    alum.mostrarAlum();
   }
}
1
ответ дан 24.11.2019, 14:59
  • 1
    Схвати и # 237; именно он это делал, я тебе благодарен за это Хавьер, уже остаюсь более спокойным. – Jorge Gonzalez 13.01.2016, 23:35

TambiГ©n ты можешь использовать класс javax.swing.JOptionPane, чтобы позволять пользователю вводить соответствующие данные. Пример:

// Entrada de datos
String nom = JOptionPane.showInputDialog("Nombre:");
String ape = JOptionPane.showInputDialog("Apellido:");
String dni = JOptionPane.showInputDialog("DNI:");
String tel = JOptionPane.showInputDialog("Teléfono:");

// Se crea la instancia de Alumno
Alumno alumno = new Alumno(nom, ape, dni, tel);
1
ответ дан 24.11.2019, 14:59
  • 1
    Очень хороший!! каково различие между классом javax.swing. JOptionPane и другие два? – Jorge Gonzalez 14.01.2016, 17:04
  • 2
    В этом конкретном случае я верю в то, что Swing est и # 225; dem и # 225; в. @JorgeGonzalez - класс librer и # 237; в est и # 225; ndar Java, чтобы просить данные в trav и # 233; s интерфейса пользователя. – Omar 14.01.2016, 18:01