Olá Monica......
 
Vc não precisa contar os caracteres, pois vc está recebendo um array ( String [ ] arg ) isso é um array, portanto ele próprio já divide as palavras para vc...... fiz algumas modificações no seu código...... segue abaixo....
 
 
import java.awt.event.*;
import javax.swing.*;
class ShowSentence{
 private String strRecebida = null;
 private String [] arg = null;
 
public ShowSentence(String[] arg) {
 
  int cont=0;
 
  for(int i=0;i < arg.length;i++){
   strRecebida = arg[i];
   System.out.println("Palavra número " + i + " = " + arg[i]);
   cont++;
  }
 
  System.out.println("Número de palavras : " + cont);
}
 public static void main(String[] arg){
 new ShowSentence(arg);
}
}
 
Obs : estou dando um System.out dentro do for para vc ver em qual palavra que ele está, e outro com o número de palavras que tem na frase.....
 
Espero ter ajudado......
 
[]'s
Thiago
 
----- Original Message -----
Sent: Saturday, September 22, 2001 10:01 AM
Subject: [java-list] Problemas de principiante!!!

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(" "))) {
    cont++;
    indice++;
   }else{
     indice = strRecebida.indexOf(" ",indice);
    }
  }
  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

Responder a