então,
testei porém ainda não esta funcionando ele esta percorrendo apenas 2 posições e não todas as posições até encontrar o caracter
alguém tem alguma sugestão segue como esta o main
publicstaticvoidmain(String[]av){Stringnome="Robs@n";String[]caractersEspeciais={"@","!","#"};for(inti=0;i<caractersEspeciais.length;i++){if(nome.contains(caractersEspeciais[i])){System.out.println("Contem Especial");System.out.println("Posição "+i+" is "+nome.charAt(i));break;}else{System.out.println("Sem especial");System.out.println("Posição "+i+" is "+nome.charAt(i));}}}
galileu.gt
O que voce quer? A posicao em que ele encontrou o char especial??
isso esta errado: System.out.println("Posição " + i + " is " + nome.charAt(i));
Voce precisa de outra coisa:
nome.indexOf(caractersEspeciais[i]);
R
robsonsan
Não eu quero que ele percorre toda a string e caso encontre algum caracter especial printa que existe caractar na String e para a execução
isso System.out.println("Posição " + i + " is " + nome.charAt(i)); eu coloquei apenas para um teste mais isso ta fora
não sei o que esta tb porque quando ele executar as posições 0,1,2 usando essa String nome ai que tem 6 posições ele termina a execução antes de percorrer toda ela
F
fvslistas
Veja se te atende:
publicstaticvoidmain(String[]av){Stringnome="Robs@n";StringcaractersEspeciais="@!#";Stringc;for(inti=0;i<nome.length();i++){c=String.valueOf(nome.charAt(i));if(caractersEspeciais.contains(c)){System.out.println("Contém Especial");System.out.println("Posição "+i+" is "+nome.charAt(i));break;}else{System.out.println("Sem especial");System.out.println("Posição "+i+" is "+nome.charAt(i));}}}
valeu mesmo pela ajuda topico resolvido quem tiver a mesma duvida que eu esta ai prontinho.
obrigado.
marco_andre
Cara, acho que você poderia ter feito isso utilizando Pattern.
Com o Pattern você especifica uma lista de símbolos/letras, manda ele procurar na String e verifica se algo foi encontrado, acho que é uma mais profissional.