ola, sou novo aqui no forum e em programaçao java.
estou com um problema nas funcoes de cadastro q seguem ai no codigo.
o problema é o seguinte,
eu compilo o programa e quando seleciono a opçao para realizar algum cadastro, executa somente o primeiro codigo da funçao
ex: x[i].codigoCargo = Integer.parseInt(JOptionPane.showInputDialog(null,“Informe o codigo do cargo”));
quando eu informo o codigo o prog fexa sozinho.
alguem poderia me ajudar ja tentei d varias manerias e n estou conseguindo.
principal
[code] package gerenciamentouniversidade;
/**
*
-
@author Eduardo
*/
import javax.swing.JOptionPane;
public class Main
{
static professores vetorPro [] = new professores[10];
static administrativos vetorAdm [] = new administrativos[8];
static titulos vetorTitulos [] = new titulos [3];
static cargos VetorCargo [] = new cargos [5];public static void main(String[] args)
{
menu();}
public static void menu ()
{
char escolha = ‘?’;
while(escolha != ‘f’)
{
escolha = (char) Integer.parseInt(JOptionPane.showInputDialog(null,“Informe a Opçao.\n 1- Cadastrar titulos \n 2- Cadastrar cargos \n 3- Cadastrar professores \n 4- Cadastrar funcionario administrativo \n 5- Mostrar relaçao de funcionaios \n 6- Mostrar relacao de professores \n 7- Excluir titulos \n 8- Excluir cargos \n 9- Excluir professores \n F- finalizar”));
switch (escolha)
{
case 1: cadastroTitulos(); break;
case 2: cadastroCargos(); break;
case 3: cadastroProfessor(); break;
case 4: cadastroFuncAdm(); break;
case 5: mostraFuncionarios();break;
case 6: mostraProfessor(); break;
case 7: excluiTitulo(); break;
case 8: excluiCargo();break;
case 9: mostracargo();;break;
case ‘f’: break;
default : JOptionPane.showMessageDialog(null,“Opção Inavalida!”);
}
}}
public static void cadastroCargos ()
{
int i = 0;
//cargos x = new cargos();
cargos x[] = new cargos[5];x[i].codigoCargo = Integer.parseInt(JOptionPane.showInputDialog(null,"Informe o codigo do cargo")); x[i].Descrisao = JOptionPane.showInputDialog(null,"Descrisao do cargo"); x[i].valorSalario = Float.parseFloat(JOptionPane.showInputDialog(null,"Digite o valor do salario para o cargo")); //VetorCargo[i] = x; i++;
}
public static void cadastroTitulos ()
{
titulos x = new titulos();
//titulos x[] = new titulos[3];
int i=0;x.codigoTitulo = Integer.parseInt(JOptionPane.showInputDialog(null,"Informe o Codigo do titulo")); x.descrisao = JOptionPane.showInputDialog(null,"Descrisao do titulo(ex:Mestre)"); x.valorHoraAula = Float.parseFloat (JOptionPane.showInputDialog(null,"Informe o valor da hora/aula")); vetorTitulos[i] = x; i++;
}
public static void cadastroProfessor()
{
professores x = new professores();
//professores x[] = new professores [10];
int i=0;x.nome = JOptionPane.showInputDialog(null,"Nome do professor"); x.numeroProfessor = Integer.parseInt(JOptionPane.showInputDialog(null,"Numero do professor")); x.cargaHoraria = Integer.parseInt(JOptionPane.showInputDialog(null,"Carga horaria semanal")); x.codigoTitulo = Integer.parseInt(JOptionPane.showInputDialog(null,"Informe o codigo do titulo")); vetorPro[i] = x; i++;
}
public static void cadastroFuncAdm()
{
administrativos x = new administrativos();
// administrativos x[] = new administrativos[8];
int i=0;x.numAdm = Integer.parseInt(JOptionPane.showInputDialog(null,"Numero do Funcionario")); x.nome = JOptionPane.showInputDialog(null,"Nome do funcionario"); x.codigoCargo = Integer.parseInt(JOptionPane.showInputDialog(null,"Codigo do cargo")); vetorAdm[i] = x; i++;
} [/code]
cargos
[code]package gerenciamentouniversidade;
/**
*
-
@author Eduardo
*/
class cargos {
int codigoCargo;
float valorSalario;
String Descrisao;
}[/code]
com a funçao deste modo ele n fexa, mas salva os dados sempre no memos endereço de memoria apagando o cadastro anterior.
onde esta o erro?
[code] public static void cadastroCargos ()
{
int i = 0;
cargos x = new cargos();
//cargos x[] = new cargos[5];
x.codigoCargo = Integer.parseInt(JOptionPane.showInputDialog(null,"Informe o codigo do cargo"));
x.Descrisao = JOptionPane.showInputDialog(null,"Descrisao do cargo");
x.valorSalario = Float.parseFloat(JOptionPane.showInputDialog(null,"Digite o valor do salario para o cargo"));
VetorCargo[i] = x;
i++;
}[/code]