Onde esta o n-esimo caracter?  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
devaney
Thread.start()

Membro desde: 12/03/2010 11:58:35
Mensagens: 36
Offline

Ola pessoal, alguem sabe como posso achar um e-enesimo caracter em uma string sem fazer um ciclo for na string? Eu olhei a API da classe string e nao achei nada do genero.
Exemplo:
String a = "gato, cachorro, macaco, gorila, biscoito";
Eu queto saber em que posiçao esta a terceira virgola, nesse caso, a posiçao é 23.



Agradeço desde ja.
joaocarlos86
Entusiasta Java

Membro desde: 05/11/2007 21:34:51
Mensagens: 24
Localização: Natal - RN
Offline

Você pode usar o String.indexOf()

Joao Carlos Lima Rodrigues
[WWW] [MSN]
Vini Fernandes
Virtual Machine Man
[Avatar]

Membro desde: 20/01/2009 08:43:02
Mensagens: 523
Offline

O metodo String.indexOf() não vai funcionar, para isso tente:



abrss

This message was edited 1 time. Last update was at 09/02/2012 11:56:35


What do you know about Java? Help me!
[MSN]
devaney
Thread.start()

Membro desde: 12/03/2010 11:58:35
Mensagens: 36
Offline

O indexOf nao resolve. Ele procura uma string a partir de um index.



Eu estarei dizendo, "A partir do index 3 eu quero achar a virgola." E na verdade oq eu quero é "Onde esta' a terceira virgola.".
Eu poderia até fazer um for para procurar, mas se a string for muito grande o loop começa a ficar lento.
Vini Fernandes
Virtual Machine Man
[Avatar]

Membro desde: 20/01/2009 08:43:02
Mensagens: 523
Offline

Novamente, tente charAt(int).

What do you know about Java? Help me!
[MSN]
devaney
Thread.start()

Membro desde: 12/03/2010 11:58:35
Mensagens: 36
Offline

Vini Fernandes wrote:Novamente, tente charAt(int).

Tb nao resolve. Nesse caso estou dizendo "Me da o caracter que esta no indice i" e nao é isso que eu quero, oq eu quero é "Onde esta a terceira virgola."
Vini Fernandes
Virtual Machine Man
[Avatar]

Membro desde: 20/01/2009 08:43:02
Mensagens: 523
Offline

Cara, não há API para isso, ou seja, você vai ter que criar.

abrs...

What do you know about Java? Help me!
[MSN]
maior_abandonado
JWizard
[Avatar]

Membro desde: 03/09/2007 11:30:08
Mensagens: 2694
Localização: sp
Offline

a questão aqui é lógica... você não pode usar o loop for especificamente ou não pode usar nenhum loop? pode usar recursão?

espero ter ajudado...

falando nisso, caso seu problema tenha sido resolvido, edite o seu primeiro post e coloque um [RESOLVIDO] no titulo do tópico.
maior_abandonado
JWizard
[Avatar]

Membro desde: 03/09/2007 11:30:08
Mensagens: 2694
Localização: sp
Offline

com recursão você consegue fazer... testei aqui e funcionou.

vou deixar você quebrar a cabeça para descobrir como.

espero ter ajudado...

falando nisso, caso seu problema tenha sido resolvido, edite o seu primeiro post e coloque um [RESOLVIDO] no titulo do tópico.
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team