Boa tarde. Não consigo ter mais idéias para isso preciso de sugestões.
Exemplo eu recebo uma String "JOAO#31/FRANCISCO#26/ANA#20/LUIZ#29/" com o split "/" tenho um vetor de 4 posições logo essa é a quantidade máxima de posições ou pessoas (A String têm tamanho variável eu usei 4 como exemplo ).
A mComReserva sempre terá tamanho fixo 4x5 já a mSemReserva é o valor fixo 4x5 menos o valor total de posições determinado pelo vet1 (foi o único jeito que encontrei).
OBS:
1- O vet2 sempre terá duas posições já que vet1[0] = JOAO#31 split vet2[0]= JOAO e vet2[1]= 31 argumento #.
2- mSemReserva têm tamanho indeterminado visto que não se sabe quantas pessoas ficaram sem reservas o único jeito que eu encontrei para não deixar ela criar posições desnecessárias foi tirar o total de pessoas do vet1 e as reservadas da mComReserva mas não estou muito certo sobre isso.
3- Existe a possibilidade de todas as reservas não serem preenchidas mComReserva se isso acontece é porque não passaram no teste condicional idade>=16, ou seja, se não for para essa matriz vai para mSemReserva isso também pode preencher além do limite.
4- Ao contrário da observação 3 se o número de pessoas em que a condição for atendida for superior a 4x5 ela também deve ir para mSemReserva.
[code] public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
System.out.println("Cole a String: ");
String string = leia.next().replaceAll(" ", "");
// string = string.concat(string);
String vet1[] = string.split("/");
Pessoa mComReserva[][] = new Pessoa[4][5];
Pessoa mSemReserva[][] = new Pessoa[vet1.length - 4][vet1.length - 5];
int cont = 0;
for (int i = 0; i < vet1.length; i++) {
for (int j = 0; j < vet1.length; j++) {
String vet2[] = vet1[cont].split("#");
Pessoa pessoa = new Pessoa();
pessoa.setNome(vet2[0]); // a posição do nome é anterior ao da idade = 0
pessoa.setIdade(vet2[1]); // a posição da idade é posterior ao nome = 1
cont++;
if (Integer.parseInt(pessoa.getIdade()) >= 16) {
mComReserva[i][j] = pessoa;
} else {
mSemReserva[i][j] = pessoa;
}
}
}
}
[/code]Dúvida:Como posso preencher as matrizes sem estourar?