如何打印 Java 中的值?

How to print values in Java?

首先,不要被问题的大小吓到kkkkk 我在Java学习OOP课程,老师在那里传了一些还没来得及写代码的内容。那我有点怀疑!我在 java 中有 3 个 类。 类 SalaAula、Pessoa 和教授。

SalaAula.java

import java.util.Scanner;

public class SalaAula {
    private String nomeAluno;
    private int idadeAluno;
    private float pesoAluno;
    private float alturaAluno;
    private int matriculaAluno;

    SalaAula() {

        System.out.println("Seja bem vindo\n\n ");
        Scanner entrada = new Scanner(System.in);

        Professor professor = new Professor("Anderson", 32, 1.75f, 110f, 1010220, "Mestre");

        System.out.println("Qual seu nome? ");
        nomeAluno = entrada.next();
        System.out.println("Qual a sua idade? ");
        idadeAluno = entrada.nextInt();
        System.out.println("Qual o seu peso? ");
        pesoAluno = entrada.nextFloat();
        System.out.println("Qual a sua altura?");
        alturaAluno = entrada.nextFloat();
        System.out.println("Qual a sua matrícula?");
        matriculaAluno = entrada.nextInt();

        //Pessoa pessoa = new Pessoa(nome, idade, peso, altura, peso, matricula);
        System.out.println(new Professor());
        System.out.println("\n------------------------------------------");
        System.out.println("Nome:\tIdade:\tPeso:\tAltura:\tMatrícula:");
        System.out.println("------------------------------------------");
        System.out.println(nomeAluno + "\t" + idadeAluno + " anos\t" + alturaAluno + "\t" + pesoAluno + "\t" + matriculaAluno);
        System.out.println("------------------------------------------");

    }

    public static void main(String[] args) {
        SalaAula principal = new SalaAula();

    }
}

Pessoa.java

class Pessoa {
    private int idade;
    private String nome;
    private float altura;
    private float peso;
    private int matricula;

    Pessoa() {

    }

    Pessoa(String nome, int idade, float altura, float peso, int matricula) {
        this.idade = idade;
        this.nome = nome;
        this.altura = altura;
        this.peso = peso;
        this.matricula = matricula;
    }

    public String getNome() {
        return this.nome;
    }

    public void setAltura(float altura) {
        this.altura = altura;
    }

    public void setPeso(float peso) {
        this.peso = peso;
    }

    public void setIdade(int idade) {
        this.idade = idade;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public int getIdade() {
        return this.idade;
    }

    public float getAltura() {
        return this.altura;
    }

    public float getPeso() {
        return this.peso;
    }
    public void setMatricula(int matricula) {
        this.matricula = matricula;
    }
    public int getMatricula() {
        return this.matricula;
    }
}

Professor.java

public class Professor extends Pessoa {
    String nivelSuperior;
    Professor() {

    }
    Professor(String nome, int idade, float altura, float peso, int matricula, String nivel) {

        setNome(nome);
        setIdade(idade);
        setAltura(altura);
        setPeso(peso);
        setMatricula(matricula);

        this.nivelSuperior = nivel;
    }
    public String getNivel() {
        return this.nivelSuperior;
    }
    public void setNivel(String nivel) {
        this.nivelSuperior = nivel;
    }
}

就是这样!是给return老师的信息:

Professor professor = new Professor("Anderson", 32, 1.75f, 110f, 1010220, "Mestre");

和学生信息,在本例中将由用户输入。

我的问题是:如何打印教师信息+学生信息?

我建议为每个 pojo 实现 toString() 方法,然后简单地使用 System.out.println(yourObject)

例如对于 Pessoa class 你可以这样写:

@Override
public String toString()
{
  return String.format("Pessoa [idade=%s, nome=%s, altura=%s, peso=%s, matricula=%s]", idade, nome, altura, peso, matricula);
}