|
Monica,
Aqui
vai o c�digo correto.
Embaixo fiz algumas nota��es , espero ter
ajudado.
Allan
class ShowSentence{ public
static void main(String[] arg){ int cont=0;
String strRecebida =
arg[0];
//retira os espa�os brancos do
inicio e fim da string strRecebida = strRecebida.trim();
System.out.println(strRecebida); //pega o indice do primeiro espa�o em
branco int indice = 0; indice = strRecebida.indexOf("
");
cont++;
while (indice <
strRecebida.length()) {
if
((strRecebida.charAt(indice - 1) != ' ') && (strRecebida.charAt(indice)
== ' ')) { cont++;
indice++; }else{ indice =
strRecebida.indexOf(" ",indice); if(indice <
0) { indice =
strRecebida.length();
}
} }
System.out.println(cont); } }
Oi Pessoal,
estou come�ando em programa��o agora e escolhi
Java como minha primeira linguagem. Estou tendo uns probleminhas com a classe
abaixo que estou tentando fazer. Esta classe deveria receber uma frase como par�metro e informar
o n�mero de palavras que a frase cont�m. Essa frase � passada entre
aspas.
Estou enviando a classe e a msg de erro que
recebo ao tentar compilar. Quem puder por favor me ajude, pois parei nesse
problema e n�o estou conseguindo sair dele.
class ShowSentence{ public static void
main(String[] arg){ int cont=0;
String strRecebida =
arg[0];
//retira os espa�os brancos do inicio
e fim da string strRecebida.trim();
//pega o indice do primeiro espa�o em
branco int indice1 = strRecebida.indexOf("
"); int indice = indice1; cont++;
while (indice <
strRecebida.length()) { if ((strRecebida.charAt(indice-1).equalsTo("
")) && (strRecebida.charAt(indice).equalsTo(" "))) { [Allan Moreira] Se
entendi a sua l�gica, vc testa um caracter branco e o outro deveria ser
diferente de branco, se for isto tem um erro de l�gica e o outro erro �
de linguagem com conceito, charAt retorna um char que � um tipo primitivo
o que permite que vc fa�a uma compara��o direta ex.: charAt(indice-1) ==
'a'
. cont++; indice++; }else{ indice = strRecebida.indexOf("
",indice);[Allan
Moreira] Isto retorna -1 se n�o encontrar...Cuidado pq vc atribui a
mesma variavel do
while } } System.out.println(cont); } }
Msg de erro:
C:\Java\exemplos\ShowSentence.java:16: char
cannot be dereferenced if
((strRecebida.charAt(indice-1).equals(" ")) &&
(strRecebida.charAt(indice).equals(" ")))
{
^ C:\Java\exemplos\ShowSentence.java:16: char cannot be
dereferenced if ((strRecebida.charAt(indice-1).equals("
")) && (strRecebida.charAt(indice).equals(" ")))
{
^ 2 errors Process completed with exit code
1
|