Boa noite caros,
Na verdade não é bem uma dúvida, e sim um pedido de opinião, eu como iniciante, gostaria de saber se existe uma solução mais elegante para meu método abaixo. Ele recebe um array 2d de Bytes com
//... meus outros metodos e variaveis declaradas....
VerificaRasura(res); // res é um array 2d : res[12][36]
public void VerificaRasura(Byte[][] valor) {
for(int x = 0; x < valor.length; x++){ //percorendo a primeira dimensão do array, no caso 12 posições
for(int y = 0; y < valor[x].length; y++){ //percorrendo a segunda dimensão, no caso 36 posições.
}
}
}
Muito bem, eu preciso a cada verificação das 36 posições (2º for), a cada 6 posições percorridas verificar se não há valores repetidos, ou seja esse array é preenchido somente com ‘0’ e ‘1’, e eu não posso ter ‘1’ repetidos a cada 6 posições do array ex:
Para ficar mais claro, esse array representa 12 quadrados com 36 campos para votação, eu divido esses 36 em 6 linhas, e na mesma linha não pode haver 2 votos. Esta é a veficação que preciso fazer.
0 0 0 0 0 1
0 0 0 0 1 0
0 1 0 0 0 0
0 0 0 0 1 0
0 0 0 0 0 0
0 0 0 0 1 1 <— linha rasurada, existe 2 votos 1.
Eu consegui fazer algo que me atendesse, colocando 6 for encadeados, mas eu acho que não ficou nada elegante, e como eu sou iniciante, resolvi postar aqui na esperança de alguém conhecer uma forma mais “robusta”. Desculpem se ficou grande de mais para ler… espero que fique fácil de entender minha dúvida… abraços!