dúvida com o uso de java.util.Scanner: variável de um outra classe

2 respostas
T

Olá!

Acho que não fui muito claro em minha dúvida no título, mesmo assim, deixe-me explicar a minha dúvida.

Dei uma procurada no google e aqui no fórum e não consegui achar nada que clareasse minha mente (talvez eu não esteja sabendo procurar…). O lance é o seguinte:

entendi direitinho como funciona a java.util.Scanner, mas não entendi como faria para chamá-la e usá com uma variável externa. Por exemplo:

tenho a classe Aplicacao, que deve exibir todos os dados da classe professor e da classe Aluno. Eu devo criar o objeto Scanner sc = new Scanner(System.in); por exemplo dentro de Aplicacao, certo? Bom… até aí vai. Mas como eu quero alterar algo externo, como eu faço para chamar sc.nextInt(); ? Quero dizer, ela deve ser passada na classe Professor, por exemplo, ou dentro de Aplicacao? Se denttro de Aplicacao, como?

Fiquei realmente confuso com isso!
:?

agradeço desde já!

[edit]

achei melhor editar e incluir o código…

http://www.4shared.com/file/24461517/ca4917c1/AugustoRicardoCapelano.html

tá compactado em 7zip.

2 Respostas

Lucas_Cavalcanti

Pelo visto você não entendeu direitinho como usar o Scanner…

o Scanner recebe um InputStream do construtor e vai ler dados dele…

quando você usa o System.in, o InputStream é a entrada padrão, geralmente o teclado…

ou seja, nesse caso o Scanner vai ler dados do teclado…

Como vc pretende exibir dados das classes usando o Scanner??
O Scanner não altera nada… ele só lê coisas…

Tente reformular a pergunta, e compactar seu arquivo num formato decente =) (7Zip não é legal)

Abraços

T

Consegui resolver… valeu!

import java.util.Scanner;
public class Aplicacao
{
//  public static int ciape; 

    public static void main (String args[]){
        
        Scanner sc = new Scanner(System.in);
        Professor p1 = new Professor();
        Aluno a1 = new Aluno();     
        Aluno a2 = new Aluno();
            
        System.out.println("Digite os dados para o professor: ");
        System.out.println("CIAPE: ");

        p1.setCiape( sc.nextInt ());


        if (p1.ValidarCiape(p1.getCiape())) {
            System.out.println("Ciape Valido");
       }
        else{
            System.out.println("Ciape não Valido");      
        }    
        System.out.println("Professor"); 
        System.out.println("Carga Horária: "+p1.CargaHoraria()); 
        System.out.println("Nome da Disciplina: "+p1.NomeDisciplina()); 

        System.out.println("Digite o nome do aluno: ");
        a1.setNome( sc.next ());
        System.out.println("Digite a matrícula do aluno: ");
        a1.setMatricula( sc.nextInt ());
        System.out.println("Digite a renda do aluno: ");
        a1.setRenda( sc.nextDouble ());      

        System.out.println("Alunos"); 
        System.out.println("Nome: "+a1.getNome()); 
        System.out.println("Matrícula: "+a1.getMatricula()); 
        System.out.println("Renda: "+a1.getRenda());

        System.out.println("Digite o nome do aluno: ");
        a2.setNome( sc.next ());
        System.out.println("Digite a matrícula do aluno: ");
        a2.setMatricula( sc.nextInt ());
        System.out.println("Digite a renda do aluno: ");
        a2.setRenda( sc.nextDouble ());

        System.out.println("Nome: "+a2.getNome()); 
        System.out.println("Matrícula: "+a2.getMatricula()); 
        System.out.println("Renda: "+a2.getRenda());
         
    }
       
    
    
}

OFF: mas qual o problema com o 7zip??? winrar extrai arquivos 7zip sem problemas… mas blz! na próxima vez eu coloco em um tarball com compressão bzip2. :mrgreen:

Criado 17 de setembro de 2007
Ultima resposta 18 de set. de 2007
Respostas 2
Participantes 2