| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 09:59:03
|
Mannes
Thread.start()
![[Avatar]](/images/avatar/1e5afce26f816c212a6b27dc47923658.jpg)
Membro desde: 20/08/2007 17:09:06
Mensagens: 44
Localização: Depende
Offline
|
Olá pessoal do guj!
Estou numa tarefa um tanto quanto difícil e desde já agradeço...
Tenho um ArrayList<meuBean> list = new ArrayList<meuBean>();
e meuBean é assim:
Bom, no desenvolver do software há 3 loops que preenchem este ArrayList...
Mas no fim se esse for exibido fica assim:
N_Programa | N_Peca | N_Ferramenta | TempoUso | Ferramenta
------3000--------65------------null-------------nulll------------null
------null---------null------------3----------------8--------------null
------null---------null------------null-------------null-------------84
------null---------null------------null-------------null-------------3
------null---------null------------null-------------null-------------98
...
-------------------------- e assim vai --------------------------
O 1º loop preenche as 2 primeiras colunas, o 2º loop preenche a 3 e 4, e o ultimo loop preenche soh a ultima, lembrando: cada linha é um bean(é esse o que está me dificultando)
Bom, os "nulls" que estão, digamos assim, acima da "diagonal principal"(mas isso não é uma matriz!) não devem existir, os que estão abaixo podem ficar lá.
Fiquei batendo minha cabeça por uma semana pensando em como tirar esse nulls
Eu sei que peguei pesado, me desculpem por isso, talvez vocês possam me dar uma sugestão...estou de mente aberta e agradeço novamente!
EDIT 1: os "nulls" acima da "diagonal principal" variam de acordo com os loops anteriores...
This message was edited 1 time. Last update was at 14/12/2009 10:02:03
|
-------------
By Mannes |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 10:08:21
|
Tiburcio_Mancha
JavaEvangelist
![[Avatar]](/images/avatar/273ea7552f2fedc728d1462e7791434b.jpg)
Membro desde: 28/07/2008 10:34:13
Mensagens: 367
Offline
|
Bom, pelo que entendi, a cada loop vc esta criando um objeto novo e inserindo no ArrayList...exemplificando, vc criou um objeto com as duas primeiras propriedades preenchidas e o inseriu....em seguida no segundo looping, vc criou um novo objeto, o anterior ja foi colocado no ArrayList...pos isso que esta dando os nuls nas propriedades...
Altere sua lógica e preencha todas as propriedades do objeto antes de inseri-lo...
This message was edited 1 time. Last update was at 14/12/2009 10:08:52
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 10:30:24
|
Mannes
Thread.start()
![[Avatar]](/images/avatar/1e5afce26f816c212a6b27dc47923658.jpg)
Membro desde: 20/08/2007 17:09:06
Mensagens: 44
Localização: Depende
Offline
|
Tiburcio_Mancha, infelizmente não posso fazer isso, foi a primeira coisa que pensei, mas eu recebo esse Array assim, já populado estranhamente...
Estou trabalhando numa lógica muito comprida, acho que irá deixar meu programa muito lento... mas se funcionar eu postarei... por enquanto aguardo qualquer sujestão...
Muito obrigado Tiburcio_Mancha! mas como disse não sou eu quem popula esse array...mas é assim que ele faz o bean tem suas 5 posições,
No primeiro for ele preenche somente as primeiras, entao ele insere no array,
No segundo a 3 e 4, insere, e no ultimo a ultima "coluna" (ou propriedades, como vc escreveu..) e insere,
Verei se posso alterar essas inserções,.. mas ficarei esperto a qualquer sugestão,
Obrigado novamente Tiburcio_Mancha!
|
-------------
By Mannes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 10:35:00
|
Tiburcio_Mancha
JavaEvangelist
![[Avatar]](/images/avatar/273ea7552f2fedc728d1462e7791434b.jpg)
Membro desde: 28/07/2008 10:34:13
Mensagens: 367
Offline
|
não tem como vc criar um método para cada looping e vc ir passando o objeto para cada método, no final vc insere no ArrayList?
Porque se vc inserir no ArrayList no primeiro, o objeto que vc armazenar nos segundo será outro, assim como no terceiro..
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 10:52:17
|
Mannes
Thread.start()
![[Avatar]](/images/avatar/1e5afce26f816c212a6b27dc47923658.jpg)
Membro desde: 20/08/2007 17:09:06
Mensagens: 44
Localização: Depende
Offline
|
Acho que isso não iria funcionar, cada loop tem um numero de voltas diferente, são dois fors e um while.
Pelo menos da maneira que pensei não funcionaria...
Você conhece alguma forma de fazer algo assim:
1º loop 1º volta: meuBean.setN-programa
2º loop 1º volta: meuBean.setN-ferramenta
3º loop 1º volta: meuBean.setData
1º loop 2º volta: ...
Entendeu certo? fazer um ciclo de cada loop por vez, eu pensei nisso antes, mas não faço idéia de como fazer, se você(ou alguém mais) souber eu aceitarei ajuda =D
EDIT 1: Porém vem aquela situação, o primeiro loop pode ser menor que o segundo.. logo o segundo e o terceiro acabarão junto com o primeiro...não vai trazer o resultado correto!
Novamente, obrigado pela ajuda...
This message was edited 1 time. Last update was at 14/12/2009 10:55:35
|
-------------
By Mannes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:00:04
|
Tiburcio_Mancha
JavaEvangelist
![[Avatar]](/images/avatar/273ea7552f2fedc728d1462e7791434b.jpg)
Membro desde: 28/07/2008 10:34:13
Mensagens: 367
Offline
|
hum, não sei se comprendi corretamente, mas vc ta ligado no comandos break e continue????
eu num tenhu exemploa ki facil pra te mostrar, mas da uma olhada na net q ta cheio de exemplos?se entendi certo, break e continue resolvem seu problema
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:03:09
|
marcobiscaro2112
JWizard
Membro desde: 01/12/2008 11:56:04
Mensagens: 2408
Localização: São Paulo - SP
Offline
|
O que você gostaria que aparecesse no lugar de 'null'?
Será que você não poderia setar uma valor padrão para as propriedades na classe meuBean (apesar que isso parece ir contra o princípio de Bean...).
|
Marco Biscaro.
Seja livre!
Você sabia que provavelmente há milhares de arquivos duplicados no seu computador?
Ei... você está usando DefaultTableModel no seu projeto?? Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:10:13
|
Mannes
Thread.start()
![[Avatar]](/images/avatar/1e5afce26f816c212a6b27dc47923658.jpg)
Membro desde: 20/08/2007 17:09:06
Mensagens: 44
Localização: Depende
Offline
|
Poxa! Só agora notei que não revelei o que deve entrar no lugar de null!
Quero que os registros de baixo venham para cima, foi isso que eu quis dizer com eliminar os null,
Me desculpem =P
Bom, vou dar uma olhada no break e continue, eu já conhecia, mas como não domino muito bem(como assim não domina? que noob ) nem pensei nessa solução.
Mas ainda acho que o primeiro loop sendo menor que os outros dois não irá funcionar, pois quando encerrar o primeiro os outros irão encerrar também, no máximo acho que dá para fazer-los darem mais uma volta...
Mesmo assim irei tentar implementar algo... muito obrigado a todos!
Continuo de mente aberta, qualquer sujestão é bem vinda... e postarei caso consiga algo...
|
-------------
By Mannes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:15:27
|
Tiburcio_Mancha
JavaEvangelist
![[Avatar]](/images/avatar/273ea7552f2fedc728d1462e7791434b.jpg)
Membro desde: 28/07/2008 10:34:13
Mensagens: 367
Offline
|
então, da uma olhada, o break quando é chamado encerra o for e o continue quando chamado para a execução do código e inicia o looping seguinte
This message was edited 1 time. Last update was at 14/12/2009 11:16:27
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:18:50
|
lina
Moderador
![[Avatar]](/images/avatar/8849f0a976aa5332853e848655a1d28f.jpg)
Membro desde: 23/12/2006 21:05:04
Mensagens: 3083
Offline
|
Oi,
Realmente isso foi um pouco chato de fazer... Vou colocar o código, nele já tem os devidor comentários:
Vai precisar deste tbm:
Tchauzin!
|
Você é novo no GUJ? Vai criar um tópico e colar seu código-fonte? Leia aqui antes, por favor!
http://www.guj.com.br/posts/list/50115.java
Se o seu tópico foi respondido e você está satisfeito, segue:
- Pressione o botão <Edit> de seu primeiro post
- Acrescente no final do título a tag [RESOLVIDO]
@gujgirl
http://www.restartfans.hdfree.com.br
Meu blog:
http://www.runthecode.wordpress.com
Tchauzin! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:35:18
|
lina
Moderador
![[Avatar]](/images/avatar/8849f0a976aa5332853e848655a1d28f.jpg)
Membro desde: 23/12/2006 21:05:04
Mensagens: 3083
Offline
|
Oi,
Aff não acredito! não é isso que você quer.. rsrs! Esse método retira as posições nulas do Array..
Desculpe!
Tchauzin!
|
Você é novo no GUJ? Vai criar um tópico e colar seu código-fonte? Leia aqui antes, por favor!
http://www.guj.com.br/posts/list/50115.java
Se o seu tópico foi respondido e você está satisfeito, segue:
- Pressione o botão <Edit> de seu primeiro post
- Acrescente no final do título a tag [RESOLVIDO]
@gujgirl
http://www.restartfans.hdfree.com.br
Meu blog:
http://www.runthecode.wordpress.com
Tchauzin! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:37:25
|
Mannes
Thread.start()
![[Avatar]](/images/avatar/1e5afce26f816c212a6b27dc47923658.jpg)
Membro desde: 20/08/2007 17:09:06
Mensagens: 44
Localização: Depende
Offline
|
Me desculpe, num entendi nada lina... sou muito iniciante em java, mas reparei que você passa um object como parametro e retorna um object também,
1. Acho que se eu passar um arraylist vai funcionar, certo? 2. Ou devo transformar o array em Object(o que não faz sentido para mim)?
3. Não há como retornar um arraylist? ou fazer algo depois do retorno e converter para arraylist?
tipo assim:
Bem, vou continuar olhando os breaks e continues...
Muito Obrigado, lina, por se esforçar tanto! E parabéns você é uma ótima programadora...
Aguardo as respostas...
EDIT 1: ouch...só agora vi seu ultimo post, poxa, me desculpe por não exemplificar corretamente...
EDIT 2: Pessoal, vou almoçar, vcs também deveriam, mas depois eu volto e dou uma olhada para ver o que vcs aprontaram, rsrs, estou pensando sériamente em refazer o método de inserção... depois do almoço irei trabalhar em cima dele, pensei vagamente em uma lógica que não irá inserir nada nulo... muito obrigado a todos que estão se esforçando! E desculpe por ser noob
This message was edited 2 times. Last update was at 14/12/2009 11:50:07
|
-------------
By Mannes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 11:53:11
|
lina
Moderador
![[Avatar]](/images/avatar/8849f0a976aa5332853e848655a1d28f.jpg)
Membro desde: 23/12/2006 21:05:04
Mensagens: 3083
Offline
|
Oi, Então.. é pq eu fiz esse método para trabalhar de forma generica. Funcionando todos os tipos String[], int[] etc... Para Array, deverá ser feito: Um pouco trabalhoso né! não pensei nisso direito rsrs.. Vou ver se conseguirei melhora-lo! Tchauzin!
This message was edited 1 time. Last update was at 14/12/2009 11:53:32
|
Você é novo no GUJ? Vai criar um tópico e colar seu código-fonte? Leia aqui antes, por favor!
http://www.guj.com.br/posts/list/50115.java
Se o seu tópico foi respondido e você está satisfeito, segue:
- Pressione o botão <Edit> de seu primeiro post
- Acrescente no final do título a tag [RESOLVIDO]
@gujgirl
http://www.restartfans.hdfree.com.br
Meu blog:
http://www.runthecode.wordpress.com
Tchauzin! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 14/12/2009 14:06:23
|
Mannes
Thread.start()
![[Avatar]](/images/avatar/1e5afce26f816c212a6b27dc47923658.jpg)
Membro desde: 20/08/2007 17:09:06
Mensagens: 44
Localização: Depende
Offline
|
Olá pessoal! Acho que este vai ser meu ultimo post deste tópico...heheh
Eu achei uma solução!
Conversei com algumas pessoas, e percebi que o modo de inserção dos beans dentro do ArrayList estava um tanto quanto esquesito(e errôneo), portanto arrumei a lógica dessa inserção para que não aparecesse os campos nulls
e o resultado na tela sai assim:
N_Programa | N_Peca | N_Ferramenta | TempoUso | Ferramenta
------3000--------65---------------1--------------78--------------12
------null---------null--------------3----------------8--------------32
------null---------null------------null-------------null-------------84
------null---------null------------null-------------null--------------3
------null---------null------------null-------------null-------------98
Agradeço a todos que me ajudaram, e infelizmente não pude contribuir com um código de RemoverNull, porém nossa moderadora lina postou dois códigos muito bons!
E a idéia do Tiburcio_Mancha foi muito boa também, não cheguei a implementá-la, mas se quiserem é só pedir...
Caso queiram algum código avise... não postei minha lógica de inserção agora porquê é muito extensa, peço que compreendam isso.
Qualquer coisa é só chamar(ou mandar uma PM =P)
Mais uma vez: Obrigado a todos!
|
-------------
By Mannes |
|
|
 |
|
|