Camara Posted December 8, 2006 at 10:12 PM Report #69642 Posted December 8, 2006 at 10:12 PM Olá boa noite a todos! Eu sou novo neste forum e como achei o forum interessante precisava de ajuda num algoritmo que não estou a conseguir fazer! A situaçáo é a seguinte: Preciso de inverter as palavras de um texto. Por exemplo vamos imaginar que o texto era: "Fomos ao circo hoje" com o objectivo de ficar: "hoje ao circo Fomos". Já experimentei várias instruções de código, mas estou com problemas por causa dos espaços entre as palavras. E já agora se houver algum método em java para poder fazer a instrução directamente num array, era exclente mas eu não conheco. Alguém me consegue ajudar. Cumprimentos a todos.
Rui Carlos Posted December 8, 2006 at 11:23 PM Report #69650 Posted December 8, 2006 at 11:23 PM Bem-vindo ao fórum!!! existe aqui uma secção de Java, é lá que devias ter colocado este post! isto deve dar uma ajuda: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html#split(java.lang.String) depois é só inverter a ordem do array e passar outra vez tudo para uma string... Rui Carlos Gonçalves
magician Posted December 8, 2006 at 11:36 PM Report #69652 Posted December 8, 2006 at 11:36 PM O problema é que segundo o teu exemplo não é feita a epenas uma inversão visto "Fomos ao circo hoje" e "hoje ao circo Fomos" não ser a mesma string invertida :S I haven’t lost my mind; it’s backed up on DVD somewhere!
Rui Carlos Posted December 9, 2006 at 12:00 AM Report #69653 Posted December 9, 2006 at 12:00 AM O problema é que segundo o teu exemplo não é feita a epenas uma inversão visto "Fomos ao circo hoje" e "hoje ao circo Fomos" não ser a mesma string invertida :S ele fala em inverter as palavras e não uma string!! mas basta criar um array com as palavras separadas, e isso penso que pode ser feito com a função 'split'. Rui Carlos Gonçalves
Gurzi Posted December 9, 2006 at 12:28 AM Report #69663 Posted December 9, 2006 at 12:28 AM Pode ser feito através de uma string auxiliar, é so trocar as posições
Knitter Posted December 9, 2006 at 05:03 PM Report #69772 Posted December 9, 2006 at 05:03 PM Mas, como o magician disse, ele não inverte apenas a String, inverte a frase de forma a ficar legível mas invertida. Reparem na posição do "ao", não está no sitio onde deveriar estar se apenas se tivesse invertido a String. Não sei se foi falha a apresentar o exemplo ou se é mesmo esse o objectivo...
Rui Carlos Posted December 9, 2006 at 05:07 PM Report #69775 Posted December 9, 2006 at 05:07 PM Não sei se foi falha a apresentar o exemplo ou se é mesmo esse o objectivo... acho que deve ser engano... senão acho que era impossível resolver o problema. Rui Carlos Gonçalves
magician Posted December 9, 2006 at 07:16 PM Report #69796 Posted December 9, 2006 at 07:16 PM Exacto era precisamente a esse "ao" que me referia. I haven’t lost my mind; it’s backed up on DVD somewhere!
Camara Posted December 11, 2006 at 11:52 PM Author Report #70245 Posted December 11, 2006 at 11:52 PM OK ! Resolvido. Isto é uma parte do programa. Foi com o "split". Obrigado a todos. private void invertText(){ StringBuffer fraseAux = new StringBuffer(" "); String[] indice = original.split(" "); for(int i = indice.length-1; i >=0 ; i--){ if (i==indice.length-1) fraseAux = fraseAux.append(indice+" "); else fraseAux = fraseAux.append(indice+" "); } String fraseInvert=fraseAux.toString(); System.out.print("invertText "+fraseInvert);
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now