import java.util.StringTokenizer;
public class ReverseWords {
public static void main(String[] args) {
StringBuilder output = new StringBuilder();
String str = "This is String , split by StringTokenizer, created by mkyong";
StringTokenizer st = new StringTokenizer(str);
char space =' ';
System.out.println("---- Split by space ------");
while (st.hasMoreElements()) {
//System.out.println(st.nextElement());
output.insert(0,st.nextElement());
output.append(" ");
}
System.out.println(output.toString());
/*System.out.println("---- Split by comma ',' ------");
StringTokenizer st2 = new StringTokenizer(str, ",");
while (st2.hasMoreElements()) {
System.out.println(st2.nextElement());
}*/
}
}
Я пытаюсь просто поменять местами слова строки, и вот что я получаю:Stringbuilder не может добавить пробел?
mkyongbycreatedStringTokenizer,bysplit,StringisThis
Или используйте метод очистки, который выталкивает все токены в стек, а затем выталкивает их в выходную строку. – chrylis
'output.insert (0," "); output.insert (0, st.nextElement()); 'также будет работать. Но я не знаю, какой из них «чище». – Tom
Строка s = st.nextElement(); output.insert (0, ""); output.insert (0, st.nextElement()); Не работает. Это оставляет меня с расколом. – Raj