Como alterar cadastro java

9 respostas
java
V

Gostaria de saber como faço para alterar cadastro sem usar banco de dados?eu precisaria executar o sitema todo pelo netbenas .Obrigado!

public static void Cadastrarbicicletas() {

	int QuantCao;

	String Quant = JOptionPane
			.showInputDialog("- CADASTRAR BICICLETAS:\n\nQuantas bicicletas Deseja Cadastrar: ");

	if (Quant == null) {

		Quant = "0";

          	}
           QuantCao = Integer.parseInt(Quant);

	bicicletas = new Bicicleta[QuantCao];

	for (int i = 0; i < bicicletas.length; i++) {

		bicicletas[i] = new Bicicleta();

	}
            for (int i = 0; i < QuantCao; i++) {

		bicicletas[i]
				.setcodigoBicicleta (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o código da bicicleta: ("
								+ (i + 1) + "/" + QuantCao + ")"));
            bicicletas[i]
				.setcor (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite a cor da bicicleta: "
								+ bicicletas[i].getcodigoBicicleta()
								+ ""));
            bicicletas[i]
				.settipo (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o tipo da bicicleta: "
								+ bicicletas[i].getcodigoBicicleta()
								+ "\nDICA: marca e/ou modelo!\n\n"));
            bicicletas[i]
				.setmarcha (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o número de marchas: "
								+ bicicletas[i].getcodigoBicicleta()
								+ "\nDICA: Apenas números!!!\n\n"));
            bicicletas[i]
				.setvalorAluguel (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o valor do aluguel: "
								+ bicicletas[i].getcodigoBicicleta()
								+ "\nDICA: Apenas números!!!\n\n"));
}
                           
            for (int i = 0; i < QuantCao; i++) {

		JOptionPane.showMessageDialog(null, bicicletas[i].getcodigoBicicleta());

	}
            	JOptionPane.showMessageDialog(null, "Bicicleta Cadastrada!!!");

}

public static void Consultarbicicletas() {
	
    if (bicicletas == null) {

		JOptionPane
				.showMessageDialog(null,
						"- CONSULTAR BICIICLETA:\n\nVocê precisa cadastrar pelo menos 1 bicicleta!\n\n");

	} else { 
            int total = 1;
        
		lista = "";

		for (int i = 0; i < bicicletas.length; i++) {

			lista += "BICICLETA: " + (i + 1) + "\n";
			lista += "CÓDIGO: " + bicicletas[i].getcodigoBicicleta() + "\n";
			lista += "TIPO: " + bicicletas[i].gettipo()+ "\n";
                            lista += "MARCHAS: " + bicicletas[i].getmarcha()+ "\n";
                            lista += "VALOR ALUGUEL: " + bicicletas[i].getvalorAluguel()+ "\n";
			lista += "\n\n";
			total++;

		}
            	JOptionPane.showMessageDialog(null, "- CONSULTAR BICICLETAS:\n\n"
				+ "Total de " + (total - 1) + " bicicletas Cadastradas:\n\n"
				+ lista);

    } 
        }
    public static void Alterarbicicletas(){
        
        
    }

9 Respostas

S

Você quer alterar os dados ou salvá-los?

Para alterar só precisa do índice da bicicleta que você quer alterar os dados.

Já salvar os dados sem banco de dados você pode usar aquivos.

V

Preciso alterar os dados que foi criado,vc pode me explicar melhor como fazer?

S

Posso sim, se uma bicicleta já foi criada que dizer que ela existe no array, então você apenas precisa saber qual o índice que ela está no array.

Exemplo (a classe Bicicleta que estou dando de exemplo possuí apenas dois atributos, id e cor):

// Algumas bicicletas
Bicicleta bike1 = new Bicicleta();
bike1.setId("#511");
bike1.setCor("Preta");
Bicicleta bike2 = new Bicicleta();
bike2.setId("#341");
bike2.setCor("Dourada");
Bicicleta bike3 = new Bicicleta();
bike3.setId("#451");
bike3.setCor("Verde");

// Adicionando as bicicletas em um array, isso se assemelha ao 
// seu método cadastrarBicicletas, mas estou fazendo manualmente.
Bicicleta[] bicicletas = new Bicicleta[3];
bicicletas[0] = bike1;
bicicletas[1] = bike2;
bicicletas[2] = bike3;

// Agora eu quero alterar a cor da bike2, apenas preciso pegar
// a posição que ela esta e setar uma nova cor.
bicicletas[1].setCor("Vermelho");

Como você já tem um método que mostra as bicicletas e seus dados, você pode usá-lo para ver as bicicletas que já estão criadas e podem ser alteradas.

V

Manualmente eu consegui fazer mas para alterar pelo menu de opções eu não consegui ,sou iniciante ,vou mandar o código para vc ver ,assim vc pode entender melhor o que eu estou tentando fazer ! vlw ,obrigado!

package bicicletaria;

import java.util.ArrayList;

import javax.swing.JOptionPane;

public class Cadastro {

ArrayList  contatos = new ArrayList();
static Cliente clientes[] = null;
static Bicicleta bicicletas[] = null;
static String lista;
static int confirma = -1;
static int j = 0;

public static void main(String[] args) {
        
     Cadastro cad = new Cadastro();
     cad.contatos.add(new Cliente());
        
       
        

	String op = "";
	int opcao = -1;

	do {

		op = JOptionPane.showInputDialog("SISTEMA BICICLETARIA -- :\n\n"
				+ "1 ~> Cadastrar Clientes.\n"
				+ "2 ~> Consultar Clientes.\n"
                                    + "3 ~> Alterar clientes.\n"
				+ "4 ~> Cadastrar bicicletas.\n"
				+ "5 ~> Consultar bicicletas.\n"
                                    + "6 ~> Alterar bicicletas.\n"
                                    + "0 ~> Sair.\n\n");

		if (op == null) {

			op = "0";

		}

		opcao = Integer.parseInt(op);

		if (opcao == 1) {

			CadastrarCliente();

		} else if (opcao == 2) {

			ConsultarCliente();
		} 
                      else if (opcao == 3) {

			AlterarCliente();

		}
                    else if (opcao == 4) {

			Cadastrarbicicletas();

		}                       
                    else if (opcao == 5) {

			Consultarbicicletas();

		}
                     else if (opcao == 6) {

			Alterarbicicletas();

		}
                    else if (opcao == 0 || opcao == 10) {

			Sair();

		} else {

			JOptionPane.showMessageDialog(null, "Opção Inválida!!!");

		}

	} while (confirma != 0);

}

public static void CadastrarCliente() {

	int QuantClient;

	String Quant = JOptionPane
			.showInputDialog("- CADASTRAR CLIENTE:\n\nQuantos Clientes Deseja Cadastrar: ");

	if (Quant == null) {

		Quant = "0";

	}

	QuantClient = Integer.parseInt(Quant);

	clientes = new Cliente[QuantClient];

	for (int i = 0; i < clientes.length; i++) {

		clientes[i] = new Cliente();

	}

	for (int i = 0; i < QuantClient; i++) {

		clientes[i]
				.setNome(JOptionPane
						.showInputDialog("- CADASTRAR CLIENTE:\n\nDigite o Nome do Cliente: ("
								+ (i + 1) + "/" + QuantClient + ")"));

		clientes[i]
				.setcpf(JOptionPane
						.showInputDialog("- CADASTRAR CLIENTE:\n\nDigite o CPF do Cliente: "
								+ clientes[i].getNome()
								+ "\nOBS: Use apenas números\n\n"));
                    clientes[i]
				.setcodigo(JOptionPane
						.showInputDialog("- CADASTRAR CLIENTE:\n\nDigite o código do cliente: "
								+ clientes[i].getNome()
								+ "\nOBS: Use apenas números\n\n"));
                    clientes[i]
				.settelefone(JOptionPane
						.showInputDialog("- CADASTRAR CLIENTE:\n\nDigite o telefone do cliente: "
								+ clientes[i].getNome()
								+ "\nOBS: DDD+NÚMERO\n\n"));

	}

	for (int i = 0; i < QuantClient; i++) {

		JOptionPane.showMessageDialog(null, clientes[i].getNome());

	}

	JOptionPane.showMessageDialog(null, "Clientes Cadastrados!");

}

public static void ConsultarCliente() {

	if (clientes == null) {

		JOptionPane
				.showMessageDialog(null,
						"- CONSULTAR CLIENTE:\n\nVocê precisa cadastrar pelo menos 1 Cliente!\n\n");

	} else {

		int total = 1;
		lista = "";

		for (int i = 0; i < clientes.length; i++) {

			lista += "Cliente : " + (i + 1) + "\n";
			lista += "Nome : " + clientes[i].getNome() + "\n";
			lista += "CPF : " + clientes[i].getcpf()+ "\n";
                            lista += "codigo : " + clientes[i].getcodigo()+ "\n";
                            lista += "TELEFONE : " + clientes[i].gettelefone()+ "\n";
			lista += "\n\n";
			total++;

		}

		JOptionPane.showMessageDialog(null, "- CONSULTAR CLIENTE:\n\n"
				+ "Total de " + (total - 1) + " Clientes Cadastrados:\n\n"
				+ lista);

	}
  

}
    public static void AlterarCliente() {
        if (clientes == null) {

		JOptionPane
				.showMessageDialog(null,
						"- ALTERAR CLIENTE:\n\nVocê precisa cadastrar pelo menos 1 Cliente!\n\n");

	}
        
    }

public static void Cadastrarbicicletas() {

	int QuantCao;

	String Quant = JOptionPane
			.showInputDialog("- CADASTRAR BICICLETAS:\n\nQuantas bicicletas Deseja Cadastrar: ");

	if (Quant == null) {

		Quant = "0";

          	}
           QuantCao = Integer.parseInt(Quant);

	bicicletas = new Bicicleta[QuantCao];

	for (int i = 0; i < bicicletas.length; i++) {

		bicicletas[i] = new Bicicleta();

	}
            for (int i = 0; i < QuantCao; i++) {

		bicicletas[i]
				.setcodigoBicicleta (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o código da bicicleta: ("
								+ (i + 1) + "/" + QuantCao + ")"));
            bicicletas[i]
				.setcor (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite a cor da bicicleta: "
								+ bicicletas[i].getcodigoBicicleta()
								+ ""));
            bicicletas[i]
				.settipo (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o tipo da bicicleta: "
								+ bicicletas[i].getcodigoBicicleta()
								+ "\nDICA: marca e/ou modelo!\n\n"));
            bicicletas[i]
				.setmarcha (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o número de marchas: "
								+ bicicletas[i].getcodigoBicicleta()
								+ "\nDICA: Apenas números!!!\n\n"));
            bicicletas[i]
				.setvalorAluguel (JOptionPane
						.showInputDialog("- CADASTRAR BICICLETA:\n\nDigite o valor do aluguel: "
								+ bicicletas[i].getcodigoBicicleta()
								+ "\nDICA: Apenas números!!!\n\n"));
}
                           
            for (int i = 0; i < QuantCao; i++) {

		JOptionPane.showMessageDialog(null, bicicletas[i].getcodigoBicicleta());

	}
            	JOptionPane.showMessageDialog(null, "Bicicleta Cadastrada!!!");

}

public static void Consultarbicicletas() {
	
    if (bicicletas == null) {

		JOptionPane
				.showMessageDialog(null,
						"- CONSULTAR BICIICLETA:\n\nVocê precisa cadastrar pelo menos 1 bicicleta!\n\n");

	} else { 
            int total = 1;
        
		lista = "";

		for (int i = 0; i < bicicletas.length; i++) {

			lista += "BICICLETA: " + (i + 1) + "\n";
			lista += "CÓDIGO: " + bicicletas[i].getcodigoBicicleta() + "\n";
			lista += "TIPO: " + bicicletas[i].gettipo()+ "\n";
                            lista += "MARCHAS: " + bicicletas[i].getmarcha()+ "\n";
                            lista += "VALOR ALUGUEL: " + bicicletas[i].getvalorAluguel()+ "\n";
			lista += "\n\n";
			total++;

		}
            	JOptionPane.showMessageDialog(null, "- CONSULTAR BICICLETAS:\n\n"
				+ "Total de " + (total - 1) + " bicicletas Cadastradas:\n\n"
				+ lista);

    } 
        }
    public static void Alterarbicicletas(){
         if (clientes == null) {

		JOptionPane
				.showMessageDialog(null,
						"- ALTERAR BICICLETA:\n\nVocê precisa cadastrar pelo menos 1 bicicleta!\n\n");

	}
                     
         
        
    }
                    


public static void Sair() {

	confirma = JOptionPane.showConfirmDialog(null,
			"Quer mesmo Sair do Programa?");

}

}

package bicicletaria;
public class Bicicleta {

private  String codigoBicicleta;
private  String cor;
private  String tipo;
    private  String marcha;
    private  String valorAluguel;

public  String getcodigoBicicleta() {
	
	return codigoBicicleta;
	
}

public  void setcodigoBicicleta(String cod1) {
	
	codigoBicicleta = cod1;
		
}

public  String getcor() {
	
	return cor;

}

public  void setcor(String color) {
	
	cor = color;
	
}

public  String gettipo() {
	
	return tipo;

}

public  void settipo(String tipo1) {
	
	tipo = tipo1;
	
}
    public  String getmarcha() {
	
	return marcha;

}

public  void setmarcha(String vel) {
	
	marcha = vel;
	
}
    public  String getvalorAluguel() {
	
	return valorAluguel;

}

public  void setvalorAluguel(String val) {
	
	valorAluguel = val;
	
}

package bicicletaria;

import java.util.ArrayList;

public class Cliente {
ArrayList contatos = new ArrayList();

public void cadastrarcontato(Cliente Cliente){
    contatos.add(Cliente);
}

private String nome;
private String cpf;
    private String codigo;
    private String telefone;

public  String getNome() {

	return nome;
	
}

public void setNome(String name) {
	
	nome = name;
		
}

public String getcpf() {
	
	return cpf;

}

public void setcpf(String num) {
	
	cpf = num;
	
}
    public  String getcodigo() {

	return codigo;
	
}

public void setcodigo(String cod) {
	
	codigo = cod;
		
}
    
    public  String gettelefone() {

	return telefone;
	
}

public void settelefone(String tel) {
	
	telefone = tel;
		
}

}

S

Fazer uma alteração é semelhante a fazer uma criação.

Com o seu código ficaria mais ou menos assim:

public void alterarBicicleta() {
    consultarBiciletas(); // Vai mostrar toda as bicicletas.

    // Escolher o número da bicicleta para alterar.
    int bikeNum = Integer.parseInt(JOptionPane.showInputDialog(null, "Digite o número da bicicleta: ")) ;

    String codigo = JOptionPane.showInputDialog(null, "Digite o novo código: ");
    String tipo = JOptionPane.showInputDialog(null, "Digite o novo tipo: ");
    String marchas = JOptionPane.showInputDialog(null, "Digite a nova quantidade de  marchas: ");
    String cor = JOptionPane.showInputDialog(null, "Digite a nova cor ");

     bicicletas[bikeNum].setCodigo(codigo);
     bicicletas[bikeNum].setTipo(tipo);
     bicicletas[bikeNum].setMarchas(marchas);
     bicicletas[bikeNum].setCor(cor);

     JOptionPane.showMessageDialog(null, "Bicicleta  " + (numBike + 1) + " foi alterada!");
}

Tenta usar esse código como base, porquê eu fiz ele sem IDE, não testei nem nada, é apenas para de mostrar como fazer

V

Vlw, mt obrigado pela ajuda!

V

Meu código somente aceita tipo String,como eu posso fazer para usar tipo int ou tipo double ?!

S

De onde vem os dados?

Existem os métodos parseInt e parseDouble, respectivamente das classes Integer e Double.

V
os dados vem da classe cliente para a principal, quando mudo de String para int na classe aparece o erro aqui nessa parte da classe principal :

/*

clientes[i]					.setcpf(JOptionPane

.showInputDialog("- CADASTRAR CLIENTE:\n\nDigite o CPF do Cliente: "

+ clientes[i].getNome()

+ “\nOBS: Use apenas números\n\n”));
Criado 7 de agosto de 2020
Ultima resposta 10 de ago. de 2020
Respostas 9
Participantes 2