| Autor |
Mensagem |
|
|
Você pode utilizar uma estrutura dinâmica para armazenar as palavras (um ArrayList, por exemplo). Isso exigiria alterações na classe pilha.
Pode também ler todas as palavras e contar. Quando o usuário encerrar a digitação (pressionando apenas Enter, por exemplo), você instancia a pilha e empilha as Strings, o que exigiria alterações na classe InverteFrase.
Tornar a pilha dinâmica é a melhor solução na minha opinião.
|
 |
|
|
Aqui onde trabalho há um saco de pancadas...
|
 |
|
|
Realmente não consegui fazer centralizar.
Talvez este seja o comportamento do próprio Windows.
Se este for um problema, você pode utilizar o JFileChooser, que você irá conseguir centralizar.
|
 |
|
|
Ok, está ficando mais claro.
A sua matriz será inciada com zeros. Portanto se você não chamar o método inserirValores alguma vez antes de chamar o método que retorna a matriz, ela retornará sempre valores zerados.
Se você já estiver chamando o inserirValores, confira se está inserindo na posição correta (vi que ele subtrai 1 do índice passado).
Caso mesmo assim não funcione, sugiro que crie um método que retorne toda a matriz e imprima os valores dela, para conferir o que ela está armazenando (pode ser feito por debug também).
Se continuar com problemas, peço que poste o código completo, com a classe que possui a matriz e a classe que está chamando os métodos da primeira.
|
 |
|
|
Desculpe, não entendi sua dúvida.
Você gostaria de criar um método cujo retorno é uma matriz?
Você pode fazer assim:
Caso não seja isso, poste o código que você criou...
|
 |
|
|
Depende da necessidade. Eu geralmente utilizo o GridLayout, o BorderLayout e o GridBagLayout.
Quase sempre utilizo os três em conjunto.
|
 |
|
|
vanessasouza wrote:Ola a todos, gostaria primeiro de agradecer pela resposta de todos.
E queria pedir mais uma ajudinha pra tirar uma duvida.
Vi que são 8 tipos de certificados da SUN
- Sun Certified Java Associate (SCJA)
- Sun Certified Java Programmer (SCJP)
- Sun Certified Java Developer (SCJD)
- Sun Certified Web Component Developer (SCWCD)
- Sun Certified Business Component Developer (SCBCD)
- Sun Certified Developer For Java Web Services (SCDJWS)
- Sun Certified Mobile Application Developer (SCMAD)
- Sun Certified Enterprise Architect (SCEA)
Qual a diferença entre eles?
Quero fazer a nivel mais básico, e depois com mais experiencia fazer uma mais completa.
Muito obrigada mais uma vez.
O primeiro livro que te indiquei tem algumas informações introdutórias às certificações Java e também aos tipos de certificação.
Você pode ler um pouco sobre isso no preview do livro através do google books mesmo:
http://books.google.com.br/books?id=Eh5NcvegzMkC&printsec=frontcover&dq=kathy+sierra&ei=etEASazVIImUzATp_Lxr#PRA1-PA25,M1
Vá até a página 25, título "Sun's Certification Program".
Mais informações você pode obter através do site da Sun
|
 |
|
|
Estes são os chamados break e continue rotulados, que funcionam mais ou menos assim:
Quando o programa atinge um break <rótulo>, a iteração identificada por aquele rótulo será interrompida.
No seu exemplo, ao atingir a instrução "break Outer;", a iteração rotulada com "Outer" será interrompida,
passando o ponteiro de instrução para a próxima instrução após a iteração.
Já o continue <rótulo> faz com que a iteração atual pare e uma nova iteração à partir do rótulo seja iniciada.
No seu exemplo, ao atingir a instrução "continue Outer;", o ponteiro de instrução passará para a linha "for(int var1 =0; var1 < 5 ; var1++)",
executando uma nova iteração. Ou seja, o comando "System.out.println("var1:" + var1 + ", var2:" + var2);" não será executado.
Você pode perceber isso fazendo um debug do código.
As instruções de desvio não rotuladas nas iterações conseguem desviar o fluxo apenas dentro de uma iteração. Ou seja, um comando break
consegue interromper a iteração em que está e um comando continue consegue apenas efetuar uma nova iteração no bloco em que está.
Já as instruções rotuladas, conseguem desviar o fluxo para outros blocos, como no seu exemplo em que o fluxo é desviado
para a iteração mais externa.
|
 |
|
|
Olá Vanessa.
Você irá tentar a certificação SCJP (CX310-065), correto?
Se este for o caso, também estou estudando para a certificação.
Uma sugestão que te dou é a leitura de um bom livro a respeito do assunto, que certamente irá esclarecer várias de suas dúvidas.
Como sugestão, deixo os dois livros que estou utilizando como base:
1. SCJP Sun Certified Programmer for Java 6 (Exam 310-065), de Kathy Sierra e Bert Bates.
Entre as pesquisas que efetuei, este é um dos melhores livros para estudo independente. Você pode conferir o preview dele em:
http://books.google.com.br/books?id=Eh5NcvegzMkC&printsec=frontcover&dq=kathy+sierra&ei=etEASazVIImUzATp_Lxr
2. Certificação Java 5, de Roberto Rubinstein Serson
Apesar de ser de Java 5 (acredito que você irá fazer a certificação de Java 6) o livro possui diversos exercícios muito bons.
Além disso, uma boa pesquisa no site da sun e aqui no fórum também podem ser bem úteis.
Obrigado
|
 |
|
|
Tenho disponível aqui um exemplo simples em que eu uso o MVC para resolver parte da especificação de um trabalho de faculdade de uns semestres atrás.
Tem uns pequenos probleminhas, mas espero que seja útil.
Valeu!
Edit: esqueci de comentar, as classes não estão bem separadinhas, se tiver alguma dúvida sobre quem faz o que é só falar.
|
 |
|
|
Olá rafa.
Infelizmente não tive muito tempo para analisar seu código, mas acho que está no caminho correto.
Sobre a utilização do MVC com swing, eu a costumo fazer mais ou menos da seguinte maneira:
Uma classe da view captura um evento do usário, clicar no botão salvar por exemplo.
Esta classe aciona o método associado na camada de controle passando as informações necessárias. No exemplo do botão salvar, seriam enviadas as informações a serem salvas (em uma classe ou através dos parâmetros).
A camada de controle efetua então as alterações necessárias na camada de modelo e aciona listeners, se necessário, retornando o resultado da operação à camada de visão.
Assim, a sincronia pode ser mantida com certa facilidade, pois a camada de controle retorna à camada de visão o resultado da operação (que pode ser apenas uma confirmação de que a informação foi salva, por exemplo) e as demais classes podem ser avisadas conforme a necessidade através dos listeners - que podem ser fundamentais em algumas situações.
Para isso, a camada de visão deve possuir alguma ligação com a camada de controle, o que eu geralmente implementava através de um relacionamento entre elas e os listeners devem ser devidamente adicionados aos objetos.
|
 |
|
|
Concordo.
Na minha opinião, a melhor IDE é aquela em que consigo maior produtividade (me adapto melhor, tem boa performance, boas opções de plugins), o que me levou a escolher o Eclipse.
Para avaliar isso, você vai precisar utilizar um pouco cada uma e ver aquela que responde melhor às suas necessidades.
|
 |
|
|