一點點的將印象筆記中整理的東西搬家到博客~
下面這個例子講的是按照詞組順序反轉輸出,比如 輸入的句子爲:“How are you” 經過反轉後爲"you are How"
以下爲代碼示例:
//按單詞的字符串反轉
String string="1 2 3 4 5 6 7 8 9";
Stack<Object> stack=new Stack<>();
StringTokenizer stringTok=new StringTokenizer(string);
while(stringTok.hasMoreTokens()){
stack.push(stringTok.nextElement());
}
StringBuffer stringBuffer=new StringBuffer();
while (!stack.empty()) {
stringBuffer.append(stack.pop());
stringBuffer.append(" ");
}
System.out.println(stringBuffer);//9 8 7 6 5 4 3 2 1
寫一下實現思路:
聲明一個棧:他的規則就是後進先出,一定程度滿足了這個反轉的邏輯
StringTokenizer這個類的具體作用就是根據分解符進行拆分,默認的話支持空格,製表符,回車 所以代碼中和字符串生命中 均用空格
準備好這兩個東西,接下來就用到了棧的入棧和彈棧的操作,然後根據循環吧字符串拼接