[code]import java.util.Scanner;
public class executaVenda{
public static void main(String args[]){
int opcao=0;
int tipo_cliente=0;
Cliente cliente = new Cliente();
Cliente armazena_clientes[] = new Cliente[3];
ClientePF pf = new ClientePF();
ClientePJ pj = new ClientePJ();
Produto prod[] = new Produto[100];
Utilitario util = new Utilitario();
Scanner entrada = new Scanner(System.in);
int i=0,tcadastro_clientes=0,tcadastro_produto=0;
do{
System.out.println("\n\n");
System.out.println("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
util.menu();
opcao=entrada.nextInt();
switch(opcao){
case 1: System.out.println("------Tipo de Cliente-----");
do{
System.out.println("1-Pessoa Fisica");
System.out.println("2-Pessoa Juridica\nOpao:");
tipo_cliente = entrada.nextInt();
if(tipo_cliente<=0 || tipo_cliente>2){
System.out.println("Tipo de cliente invalido!");
}
}while(tipo_cliente<=0 || tipo_cliente>2);
if(tipo_cliente==1){
System.out.println("\n----Dados Cliente PF----");
pf = new ClientePF(util.entradaString("Nome: "),util.entradaString("CEP: "),util.entradaString("Cidade: "),util.entradaString("Estado: "),util.entradaString("CPF: "),util.entradaDouble("Limite: "));
armazena_clientes[i] = pf;
}else{
System.out.println("\n----Dados Cliente PJ----");
pj = new ClientePJ(util.entradaString("Nome: "),util.entradaString("CEP: "),util.entradaString("Cidade: "),util.entradaString("Estado: "),util.entradaString("CNPJ : "));
armazena_clientes[i] = pj;
}
i++;
tcadastro_clientes++;
break;
case 2: System.out.println("\n\n----Cadastrar Produto----");
prod[i]=new Produto(util.entradaInt("Codigo do produto: "),util.entradaString("Descriçao do produto: "),util.entradaDouble("Peso do produto: "),util.entradaDouble("Valor Unitrio do Produto: "));
tcadastro_produto++;
i++;
break;
case 3:
case 4: System.out.println("\n");
util.subMenu();
opcao=entrada.nextInt();
switch(opcao){
case 1:
if(tcadastro_clientes==0){
System.out.println("Nenhum cliente cadastrado");
}else{
i=0;
while(i<tcadastro_clientes){
System.out.println("\n----Cliente "+(i+1)+"----");
if(armazena_clientes[i]==pf){
pf.imprimirClientePF();
}else{
pj.imprimirClientePJ();
}
i++;
}
}
break;
case 2:
if(tcadastro_produto==0){
System.out.println("Nenhum produto cadastrado");
}else{
i=0;
while(i<tcadastro_produto){
System.out.println("----Produto "+(i+1)+"----");
prod[i].imprimirProduto();
i++;
}
}
case 3:
case 4:
}
}
}while(opcao<5);
}
}[/code]
[code]import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Cliente{
private String nome="";
private String cep="";
private String cidade="";
private String estado="";
//contrutor default
public Cliente(){}
//metodo construtor
public Cliente(String nome,String cep,String cidade,String estado){
this.nome=nome;
this.cep=cep;
this.cidade=cidade;
this.estado=estado;
}
//metodos get e set
public String getNome(){
return nome;
}
public void setNome(String nome){
this.nome=nome;
}
public String getCep(){
return cep;
}
public void setCep(String cep){
this.cep=cep;
}
public String getCidade(){
return cidade;
}
public void setCidade(String cidade){
this.cidade=cidade;
}
public String getEstado(){
return estado;
}
public void setEstado(String estado){
this.estado=estado;
}
// metodo imprime estado
public void imprimirCliente(){
System.out.println("Nome...: "+getNome());
System.out.println("Cep ...: "+getCep());
System.out.println("Cidade.: "+getCidade());
System.out.println("Estado.: "+getEstado());
}
}
[/code]
meu problema eh o seguinte
*eu tenho 2 tipos de clientes PJ e PF
eu quero jogar os dois tipos de cliente em um unico vetor e depois tenho que imprir os 2 tipos de clientes tudo junto mesmo tipo assim na posicao um eh cliente pf, na 2 e pj, na 3 eh pj na 4 ehpf, eles ficam tudo misturados mesmo, mas eu nao consigo fazer isso…como faria isso? criuando uma 2 variaveis locais dentro do case um, pq meu professor flaou que nao precisa instancias lah em cim ciente pf e cliente pf sendo que da para economizar codigo instanciando apenas a classe cliente, que possui sub classe pf e pj
e tambem tenho que imprimir esse vetor depoiss
