Arraylist e classes

8 respostas
andresmafra

Ola caros, estou com duvidas quanto a um arraylist!
Gostaria de add uma classe cliente, só que nao consigo pois fala q nao eh estatico!

o q posso fazer?

aqui segue um resumo de minha classe principal, que ira executar todo o sitema!!!

preciso de ajuda urgente!

Grato!

import java.util.ArrayList;
import javax.swing.JOptionPane;

public class Principal

{

private ArrayList pessoa;
public static void main(String args[])
{
    Cliente c = new Cliente();
    
    
    int loop =0;
    int fc = Integer.parseInt(JOptionPane.showInputDialog("Funcionário ou Cliente?\nSe for Funcionário, digite 1, se for Cliente, digite 2"));
    if(fc == 1)
    {
        int f = Integer.parseInt(JOptionPane.showInputDialog("O que deseja fazer?\n1--Cadastrar Cliente?\n2--Excluir Cliente?\n3--Alterar Cliente?\n4--Consultar Cliente?\n5--Cadastrar Produtos?\n6--Consultar Produtos?\n7--Excluir Produtos?\n8--SAIR?"));
        while(loop!=8)
        {
           if(loop ==1)
           {
               JOptionPane.showInputDialog("CADASTRAR CLIENTE");
               c.Incluir();
               pessoa.add();
           }
           else if(loop ==2)
           {
             JOptionPane.showInputDialog("REALMENTE DESEJA EXCLUIR CLIENTE?");
             pessoa.remove();
           }   
        }
            
    }        
    
    
    
    
    
    
    
    
    
}

}

8 Respostas

V

Em qual linha esta dando erro ? E qual o exception ?

W

topico ta no lugar errado, seu codigo ta postado errado, usa a tag code pra postar ele…

o erro provavelmente e porque voce declarou o arraylist pessoa na classe e ta tentando usar ele dentro de um metodo estatico…
tentar por

private static ArrayList pessoa;

poe a o numero da linha do erro… e edita o codigo e poe a tag.

andresmafra

Caros!!!

Bom consegui rodar normalmente, arrumei o erro do arraylist!!!

obrigado pela atenção de vcs!

mas estou com outro problema!!!

DEPOIS DO BREAK, COMO FAÇO PRA ELE XAMAR ESSE PROPIO METODO NOVAMENTE??

import javax.swing.JOptionPane;

public class Principal

{

public static void main(String args[])

{

Cliente c = new Cliente();

//pergunta se é funcionário ou cliente

int fc = Integer.parseInt(JOptionPane.showInputDialog(Funcionário ou Cliente?\nSe for Funcionário, digite 1, se for Cliente, digite 2));

//Métodos para o Funcionário!

if(fc == 1)

{

int f = Integer.parseInt(JOptionPane.showInputDialog(O que deseja fazer?\n1Cadastrar Cliente?\n2Excluir Cliente?\n3Alterar Cliente?\n4Consultar Cliente?\n5Cadastrar Produtos?\n6Consultar Produtos?\n7Excluir Produtos?\n8SAIR?));

while(f!=8)

{

if(f ==1)

{

c.incluirCliente();

break;

}

else if(f ==2)

{

c.excluirCliente();

break;

}

else if(f ==3)

{

c.alterarCliente();

break;

}

else if(f == 4)

{

c.mostarCliente();

break;

}

}
}        
         
}

}

Paulo_Faulstich

Cara ta bem dificil de entender o teu código.

Posta ele entre as tags code e /code.

Não entendi a parte de chamar o mesmo método.

Mas acho que o teu problema é no while.

Se der posta ai novamente teu fonte para olharmos melhor e tentrmos ajudar.

Flw.

andresmafra

kkk perdao, eh q sou novo aki!!!

mas eu keria xamar o JOption pane de novo, pra aparecer a tela de escolhas!!!

vlw rapaziada!

import javax.swing.JOptionPane; 

public class Principal 
{ 
public static void main(String args[]) 
{ 
Cliente c = new Cliente(); 
//pergunta se é funcionário ou cliente 
int fc = Integer.parseInt(JOptionPane.showInputDialog("Funcionário ou Cliente?\nSe for Funcionário, digite 1, se for Cliente, digite 2")); 
//Métodos para o Funcionário! 
if(fc == 1) 
{ 
int f = Integer.parseInt(JOptionPane.showInputDialog("O que deseja fazer?\n1--Cadastrar Cliente?\n2--Excluir Cliente?\n3--Alterar Cliente?\n4--Consultar Cliente?\n5--Cadastrar Produtos?\n6--Consultar Produtos?\n7--Excluir Produtos?\n8--SAIR?")); 
while(f!= 
{ 
if(f ==1) 
{ 
c.incluirCliente(); 
break; 
} 
else if(f ==2) 
{ 
c.excluirCliente(); 
break; 
} 
else if(f ==3) 
{ 
c.alterarCliente(); 
break; 
} 
else if(f == 4) 
{ 
c.mostarCliente(); 
break; 
} 
} 

} 

} 

}
Paulo_Faulstich

Não tinha reparado você esta usndo varios if você deve usar switch.

Segue um exemplo para que você entenda.

public class Estudos{
  public static void main(String[] args){
    int valor = 4;

    switch(valor){
      case 1:
        System.out.println("Valor é 1"); 
        break;
      case 2:
        System.out.println("Valor é 2"); 
        break;
      case 3:
        System.out.println("Valor é 3"); 
        break;
      default:
        System.out.println("Valor diferente de 1, 2 e 3"); 
        break;
    }   
  }
}

agora é só adaptar para o teu código.

import javax.swing.JOptionPane;

public class Principal { 
     public static void main(String args[]) {
          Cliente c = new Cliente();
          //pergunta se é funcionário ou cliente
          int fc = Integer.parseInt(JOptionPane.showInputDialog("Funcionário ou Cliente?\nSe for Funcionário, digite 1, se for Cliente, digite 2"));
          
          //Métodos para o Funcionário!
         if(fc == 1) {
            int f = Integer.parseInt(JOptionPane.showInputDialog("O que deseja fazer?\n1--Cadastrar Cliente?\n2--Excluir Cliente?\n3--Alterar Cliente?\n4--Consultar Cliente?\n5--Cadastrar Produtos?\n6--Consultar Produtos?\n7--Excluir Produtos?\n8--SAIR?"));
         while(f!= ) {
             switch(f) {
                 case 1: 
                      c.incluirCliente();
                      break;
                 case 2:
                      c.excluirCliente();
                      break;
             }
        }
   }

}

Da uma conferida na sintaxe. Mas acho que assim já ficou facil de você entender.

Abraço

andresmafra

Opa cara!

entendi o contexto do switch!!

amanha vou tentar fazer e ja respondo se funcionu ou nao!
rsssss

mesmo assim obrigadao pela paciencia e pela explicação!

Abç!!

Paulo_Faulstich

Flw até mais.

Criado 31 de maio de 2008
Ultima resposta 2 de jun. de 2008
Respostas 8
Participantes 4