System.out.println não imprime no terminal a opção de inserção de dados

7 respostas
Andrew_Edberg

Este é um programa que tem o propósito de simular uma agenda usando OO.

Na hora da execução as informações de cadastro dos contatos não aparecem ou seja, a opção do System.out de inserir os dados, Nome, E-mail e Numero não é imprimida no terminal . Estou usando NetBeans 6.9.1 Gostaria saber se o erro é no código, ou se o problema pode ser na IDE. Obrigado.
import java.util.Scanner;

public class AgendaPrograma {
    public static void main (String Agenda[]){
        Scanner dado = new Scanner (System.in);

        AgendaCode[] AgendaPrograma = new AgendaCode[10];

        for
          (int x = 0; x < Agenda.length; x++) {

            AgendaPrograma[x] = new AgendaCode();

       System.out.println("\n"+"Forneça o nome do Contado: ");
            AgendaPrograma[x].AltNomeList(dado.next());
       System.out.println("Forneça o E-mail do Contato: ");
            AgendaPrograma[x].AltEmailCont(dado.next());
       System.out.println("Forneça o Telefone do Contato: ");
            AgendaPrograma[x].AltNumero(dado.nextInt());

           }

                       AgendaCode aux = new AgendaCode();
                       int j;

                       for
                         (int i = 1; i < Agenda.length; i++) {
                              aux = AgendaPrograma[i];

                               for (j = i - 1; j >= 0
                                 && (AgendaPrograma[j].AbsNomeList()).compareTo(aux.AbsNomeList()) > 0; j--) {
                                      AgendaPrograma[j + 1] = AgendaPrograma[j];
                                      AgendaPrograma[j] = aux;
                                    }
                        }
                        for
                          (int i = 0; i < Agenda.length; i++) {
                          System.out.println(
                          "\n"+"Nome" + AgendaPrograma[i].AbsNomeList()
                         + "\n"+"Email" + AgendaPrograma[i].AbsEmailCont()
                         + "\n"+"Fone" + AgendaPrograma[i].AbsNumero());
                       }
    }

}

7 Respostas

pmlm

Como se chama o teu array? Agenda ou AgendaPrograma? E se AgendaPrograma é o nome da classe, tens de dar outro nome ao array.

O problema não é na hora de execução, esse código nem deve compilar…

Andrew_Edberg

Na classe AgendaCode estão as minha variáveis de instância que são:

String NomeList;
    String EmailCont;
    int Numero;

E na classe AgendaPrograma declaro os objetos.
Bom realmente tinha esse probleminha mesmo o nome da Classe tinha o mesmo nome do Objeto, ja mudei o nome do Objeto para [color=darkred]AgendaVirtual[/color].
E mesmo assim, não aparece na tela do terminal as linhas 14-19 para inserir os dados do Contado. Obrigado.

import java.util.Scanner;

public class AgendaPrograma {
    public static void main (String Agenda[]){
        Scanner dado = new Scanner (System.in);

        AgendaCode[] AgendaVirtual = new AgendaCode[10];

        for
          (int x = 0; x < Agenda.length; x++) {

            AgendaVirtual[x] = new AgendaCode();

       System.out.println("\n"+"Forneça o nome do Contado: ");
            AgendaVirtual[x].AltNomeList(dado.next());
       System.out.println("Forneça o E-mail do Contato: ");
            AgendaVirtual[x].AltEmailCont(dado.next());
       System.out.println("Forneça o Telefone do Contato: ");
            AgendaVirtual[x].AltNumero(dado.nextInt());

           }

                       AgendaCode aux = new AgendaCode();
                       int j;

                       for
                         (int i = 1; i < Agenda.length; i++) {
                              aux = AgendaVirtual[i];

                               for (j = i - 1; j >= 0
                                 && (AgendaVirtual[j].AbsNomeList()).compareTo(aux.AbsNomeList()) > 0; j--) {
                                      AgendaVirtual[j + 1] = AgendaVirtual[j];
                                      AgendaVirtual[j] = aux;
                                    }
                        }
                        for
                          (int i = 0; i < Agenda.length; i++) {
                          System.out.println(
                          "\n"+"Nome" + AgendaVirtual[i].AbsNomeList()
                         + "\n"+"Email" + AgendaVirtual[i].AbsEmailCont()
                         + "\n"+"Fone" + AgendaVirtual[i].AbsNumero());
                       }
    }

}
kenneth

Fala brow,

Bom, quando tiver um tempinho, da uma lida nas convencoes
de escrita do java… Geralmente variaveis a gente usar
comecando com minuscula, e demais palavras, comecando com maiuscula…
tipo nomeDoUsuario, enderecoFornecedor

Quanto ao seu problema, acho que a questao eh o for…

// Aqui vc ta fazende de 0 ate o tamanho de Agenda, 
// e essa Agenda, vem como parametro... 
// Se vc NAO estiver passando Agenda como param, o length dela eh 0...
// entao, nem entra nesse laco..
for   (int x = 0; x < Agenda.length; x++) {  
..
}

Sera que eh isso?

Abraco!

bRadoCk

Bom dia,

ta compilando certinho? ou da algum erro?

acho que não vai nem compilar Andrew.

Anime

Respondendo sua pergunta.

O erro está no código :wink:

Andrew_Edberg

Pior que antes estava compilando, mas vejam a minha falta de atenção:

eu declarei e instaciei o seguinte objeto, certo?:

AgendaCode[] AgendaVirtual = new AgendaCode[10];

e vejam como eu declarei o objeto [color=darkred]AgendaVirtual[/color], somente como [color=red]Agenda[/color]:

(int x = 0; x < Agenda.length; x++)

Falta de atenção a minha, obrigado ao pessoal:

kenneth
bRadoCk
pmlm
Anime

Problema resolvido. Obrigado!!

kenneth

Tranquilo, brow…

So adiciona [Resolvido] ao titulo do topico.

Abraco!

Criado 27 de agosto de 2010
Ultima resposta 27 de ago. de 2010
Respostas 7
Participantes 5