Metodo indexOf e contains

Oi Pessoal mais uma vez :

Eu usei o metodo contains para verificar se uma determinada palavra contem um ponto ou nao
mas fica dificil imprimir a posicao em que ele encontrou tal ponto.

import javax.swing.;
import java.util.
;
public class Outro
{

	public static void main(String [] args)
	{
		
		
		String input;
	String ponto=".";
		
	 
		
		input=JOptionPane.showInputDialog("introduza a palavra");
		
	
		   if(input.contains(ponto))// encontra o ponto mas nao Guarda a Posicao 
		    						// onde ele encontrou o ponto
						
		
		
		 
		System.out.println("Possui  ponto na posicao ");
		else
		System.out.println("Nao tem ponto ");
		
	}
}

Bom dia,

O contains retorna se encontrou ou não. Não sei se tem um metodo que te diga qual posição, mas, vc pode percorrer a palavra/frase com um for e comparar cada caracter com o “.”. Com isso, incrementando um contador posição, por exemplo.

:wink:

Olá,

Não entendi pq o indexOf não te atende.

http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html#indexOf(java.lang.String)

[]´s

eita, viajei!!!

int tamanho = input.indexOf(".", 0);
String teste = "";
if(teste.contains("seu pattner")){ // verifica se tem oque vc está procurando em sua string
   int posicaoCaracter = teste.indexOf("seu pattner"); // pega a posição do caracter.
}

lembrando que o contains nesse caso poderia ser descartado e usar somente o indexOf, já que quando o indexOf não encontra oque vc pediu, ele retorna -1.
sendo assim, voce poderia fazer:

String teste = "";
int posicaoCaracter
if(teste.indexOf("seu pattner") &gt -1){ // verifica se tem oque vc está procurando em sua string
   posicaoCaracter = teste.indexOf("seu pattner"); // pega a posição do caracter.
}