Exercicio Valor do vetor para classe

3 respostas
N

Galera estou com dificuldade, eu crio o objeto do vetor, só não estou conseguindo mostrar os valor digitados;

public class Exercicio {
int curso[] = new int[2];
   
public static void main(String[] args) {
        
Cursos[] curso = new Cursos[3];
Scanner e = new Scanner(System.in);
 int i;       
     
    
        for ( i=0;i<curso.length;i++){
    
        curso[i] = new Cursos(); 
        
        System.out.println("Digite o Código do Curso");
        curso[i].setCodigo(e.nextInt());
        
       }
         
        System.out.println();
       curso[i].MostraCurso();
        
    }
}

ai na classe Curso fiz assim

public class Cursos {
    public int codigo;
    public int qtdAluno;
    public float mensalidade;
...
public void MostraCurso(){
  System.out.println("Codigo do Curso"+this.codigo);
  }

3 Respostas

nel

Oi.

O ideal (correto) é utilizar encapsulamento, então, declarar aquelas variáveis como private e criar seus respectivos getter e setter, ao invés de um método que acesso um valor fazendo “this.variavel”. Outro detalhe importante, é que quando o for terminar o i vai ser incrementado. Ele passa a valer 4, por isso termina o laço de repetição, sendo assim, tu vai estar acessando uma posição inexistente no teu vetor, concorda ?

Utilize de encapsulamento e faça outro laço de repetição de para apresentar os valores ou simplesmente pega o da primeira (0) posição para mostrar.
Até podes criar um método para apresentar os valores, mas terás de alterar o teu objeto e etc.

Abraços.

N

Cara Desculpe não consegui entender, ainda!

N

sem sucesso

package exercicio;

public class Cursos {
    private int codigo;
    private int qtdAluno;
    private float mensalidade;

    public int getCodigo() {
        return codigo;
    }

    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }

    public float getMensalidade() {
        return mensalidade;
    }

    public void setMensalidade(float mensalidade) {
        this.mensalidade = mensalidade;
    }

    public int getQtdAluno() {
        return qtdAluno;
    }

    public void setQtdAluno(int qtdAluno) {
        this.qtdAluno = qtdAluno;
    }


    
  public void MostraCurso(){
  System.out.println(getCodigo());
  }
}

e …

package exercicio;
import java.util.Scanner;

public class Exercicio {
int curso[] = new int[3];
   
public static void main(String[] args) {
        
Cursos[] curso = new Cursos[3];
Scanner e = new Scanner(System.in);
 int i, var=0;       
       
        for ( i=0;i<curso.length;i++){
    
        curso[i] = new Cursos(); 
        
        System.out.println("Digite o Código do Curso");
        var=e.nextInt();
        curso[i].setCodigo(var);
        //curso[i].SetCodigo(int var); 
       }
        
   curso[i].MostraCurso();
        
    }
}
Criado 2 de março de 2012
Ultima resposta 2 de mar. de 2012
Respostas 3
Participantes 2