Problema:
Estou usando o getText para obter os dados do JTextField e passando por parâmetro em um método, porém o método espera um vetor, e não consigo indicar a posição, como faço isso? Segue meu código:
JFrame:
private void btnCadastrarActionPerformed(java.awt.event.ActionEvent evt) {
classeAluno.cadastrarAluno(txtNome.getText(),Long
.parseLong(txtRGM.getText()),
txtCurso.getText(), Double.parseDouble(txtN1.getText()),Double
.parseDouble(txtN2.getText()));
}
Código:
public void cadastrarAluno (String Nome[],long RGM[],String Curso[],
double N1[],double N2[]){
setNome(Nome);
setCurso(Curso);
setN1(N1);
setN2(N2);
setRGM(RGM);
}
Você vai precisar de um laço de repetição para armazenar os valores em suas respectivas posições do vetor, informando qual a posição de cada aluno no momento de salvar!
Olá Jonathan_Medeiros, obrigado pela sua ajuda.
O problema é como especificar a posição do vetor dentro do campo de parâmetros na hora de chamar o método.
Por exemplo:
metodo(txtExemplo.getText()); <-- Onde eu especifico o índice do vetor?
Você vai usar somente no momento da inclusão dos valores no vetor e para recuperá-los do vetor e não na recuperação do valor de um campo de texto!
Abaixo um exemplo pra facilitar o seu entendimento e implementação de seu próprio método!
public void cadastrar (String meuArray[], int PosicaoDoArray, String nome){
meuArray[PosicaoDoArray] = nome;
}
Nossa cara, sabe dizer pq o método “cadastrarAluno” recebe vetores como parâmetro e não apenas objetos simples? a ideia era cadastrar vários alunos? se sim, não era melhor criar uma classe “Aluno” com seus devidos atributos e então passar uma lista de alunos pra esse método? Os métodos “setNome”
, setCurso etc tbm recebem um vetor como parâmetro? Esses parâmetros começando com letra maiúscula ai… da uma lida sobre convenções de código java, vai te fazer bem hehe
Margel, realmente não é necessário enviar vetores pelo método, posso passar os dados em variáveis comuns e depois dentro do método, atribuir o valor à variável vetor. Até porque só enviar 1 dado de cada variável por vez e não vários, pois a pessoa que for digitar vai digitar apenas uma vez cada dado.
Obrigado pessoal.