se tu só quer contar qtos tem cada grupo, é só fazer um for p imrpimri o length de cada array de membros
for(inti=0;i<grupos.length();i++){System.out.println("Grupo "+i+" possui "+membros.length()+" membros");
}
[]s
royge
berg.pb:
se tu só quer contar qtos tem cada grupo, é só fazer um for p imrpimri o length de cada array de membros
for(inti=0;i<grupos.length();i++){System.out.println("Grupo "+i+" possui "+membros.length()+" membros");
}
[]s
Berg, obrigado pela resposta… na verdade não é só isso que eu preciso… talves tenha me expressado mal…
Vou colocar um código fictício (que não compila), mas é onde posso por o problema:
int[]usrs=null;//Percorreroarraydogruposfor(inti=0;i<grupos.length;i++){//DogrupopegaralistadeusuáriosUsuario[]usr=grupos[i].getUsuario();//Percorreralistadeusuariosfor(intj=0;j<usr.length;j++){//PegarcadausuárioUsuariousr2=usr[j];//Aquivcestarácomovalordoarrayevcfazoquequiser.}//Nãocompila...ehsohexemplo...usrs+=newint[usrs.length + usr2.length];usrs+=usr2;}//AquitodososUsuariosdetodososgruposSystem.out.println("Qde.: "+usrs.length);System.out.println("Nome do #3: "+usrs[3].getNome);
Obviamente esta última parte não compila… mas é onde estou em um impasse…
Abs.
M
marcobiscaro2112
Se você vai acessar somente o array de Usuario, faça um for dentro de outro, como por exemplo:
// manja de for-each (enhanced-for)for(Grupogruop:grupos){// percorre o vetor de gruposfor(Usuariouser:group.membros){// percorre o vetor de membros para cada grupo no vetor principalSystem.out.printl(user.getNome());}}
List<Usuario> listaDeUsuarios=new LinkedList<Usuario>();
for(Grupo grupo: seuArrayGrupo){
listaDeUsuarios.addAll(Arrays.asList(grupo.getUsuarios);
}
//aqui vc usa a lista para recuperar os dados que kiser....
royge
Interessante. Agradeço o apoio recebido!
O enhanced for é interessante, mas creio que fique na mesma situação, pois o que vou fazer com estes dados é inserir em uma JTable através de um DefaultTableModel(Object[] data, String[] columns), onde irei passar os dados de cada usuário em data.
Mas gostei da solução usando List… na verdade nunca trabalhei com Lists… mas pelo que vi parece ser o ideal e vai atender.
Quando eu terminar o projeto, irei postar ele OpenSource no dev.java! É um software de agendamento, onde suporta multiusuários, grupos , permissões por grupos e usuários, criação de eventos… implementando MVC.
Grato Renzo,
renzonuccitelli
List<Usuario> listaDeUsuarios=new LinkedList<Usuario>();
for(Grupo grupo: seuArrayGrupo){
listaDeUsuarios.addAll(Arrays.asList(grupo.getUsuarios);
}
Object[] arrayDeDados=listaDeUsuarios.toArray();
//use aqui os dados para popular deu DefaultTableModel
Como eu uso o SwingBean para popular e obter dados de minhas tabelas, eu nunca preciso transformar em array, sempre uso List mesmo.
royge
Renzo,
meu código ficou assim, utilizando HashSet mas com um problema:
HashSet PROMETE que cada vez que você adiciona um Objeto, ele checa a existência de um igual antes de atribuí-lo, para não haver duplicidade… (pelo menos foi o que eu entendi).
Mas no meu caso, vêm um monte de Permissão de Usuário iguais!!
Se fosse fazer um SysOut, ele sai assim:
1
2
2
2
2
2
3
3
4
5
5
5
5
Mas deveria sair:
1
2
3
4
5
O que você acha???
Abs.,
B
Bruno_Laturner
Sim, ele faz isso, desde que a classe do objeto implemente corretamente a interface Comparable ou que você passe um Comparator para ele realizar o trabalho.