Como popular Array de array

2 respostas
G

Olá pessoal,
Estou desenvolvendo um programa para entrega de EPIs, ele usa um leitor biométrico para fazer a leitura das digitais dos funcionários. O programa já funciona mas compara apenas uma digital e eu queria que comparasse várias digitais, então eu fiz um array de array, pois o tipo das digitais é byte[], eu não sei se é o certo mas eu fiz isso:
OBS.: Código incompleto!

Funcionario f = uiL.f;

biox.iniciar();
            
            int cRetorno = -2;

            byte[][] digitais = new byte[6][699];
            
            for (int i = 0; i < digitais.length; i++) {
                
                cRetorno = biox.compararDigital(digital, digitais[i]);

                switch (cRetorno) {
                    case 1:
                        jlOk.setText("Digital encontrada!");
                        jlOk.setForeground(Color.green);
                        Global.INSTANCIA.setLeituraOK(true);
                        break;
                    case -2:
                        jlOk.setText("Digital não encontrada!");
                        jlOk.setForeground(Color.red);
                        break;
                    default:
                        jlOk.setText("Erro: " + CisBiox.mensagens(cRetorno));
                        jlOk.setForeground(Color.red);
                        break;
                }
            }//fecha for

Mas o array não está populado com os dados do banco que está no objeto f (Funcionario) que contém as digitais (f.getDigital1). Eu até pensei em criar uma classe para as digitais mas dai teria que mudar no banco também e eu queria fazer desse jeito se possível. São 6 digitais e cada digital é um byte[] de 699.

2 Respostas

D

Assim funciona?

byte[][] digitais = new byte[6][];
digitais[0] = f.getDigital1();
digitais[1] = f.getDigital2();
digitais[2] = f.getDigital3();
digitais[3] = f.getDigital4();
digitais[4] = f.getDigital5();
digitais[5] = f.getDigital6();
H

para percorrer o for é só trocar digitais.lenght por 6, também tem como você fazer como arrayList, que deve dar um resultado melhor.

Criado 11 de abril de 2018
Ultima resposta 11 de abr. de 2018
Respostas 2
Participantes 3