Così dovrebbe andare:
codice:
String testo="bla bla bla";
StringTokenizer st=new StringTokenizer(testo," ",false);
//suddivisione token
while(st.hasMoreTokens()){
  System.out.println(st.nextToken());
}
...
dove con "false" non si tiene conto degli spazi, ma solo delle parole, mentre se all'ultimo parametro del costruttore di StringTokenizer metti true, allora si tiene anche conto degli spazi: in temini tecnici uno spazio sarà ach'esso considerato un token.