文
章
目
录
章
目
录
学习编写Java程序来反转一个字符串。首先我们将看到如何反转字符串,然后我们还将看到如何反转字符串中的单词。
这是在Java初级面试中经常被问到的一个常见谜题。让我们记住这些解决方案以便快速回忆。
Java反转字符串的字符
我们可以轻松地通过使用StringBuilder.reverse()方法来反转一个字符串的字符。
String blogName = "panziye.com";
String reverse = new StringBuilder(string).reverse();
System.out.println("原字符串 -> " + blogName);
System.out.println("反转字符串 -> " + reverse);
程序输出:
原字符串 -> panziye.com
反转字符串 -> moc.eyiznap
Java反转字符串的单词
在按单词反转字符串内容时,最自然的方式是使用StringTokenizer和Stack。正如您所知,Stack是一个实现了后进先出(LIFO)对象堆栈的易于使用的类。
String description = "Java technology blog for smart java concepts and coding practices";
// reverse string builder
StringBuilder reverseString = new StringBuilder();
// Put words from String in Stack
Stack<String> myStack = new Stack<>();
StringTokenizer tokenizer = new StringTokenizer(description, " ");
while (tokenizer.hasMoreTokens()) {
myStack.push(tokenizer.nextToken());
}
//Pop each word from stack and append in builder
while (!myStack.empty()) {
reverseString.append(myStack.pop() + " ");
}
System.out.println(reverseString.toString());
程序输出:
practices coding and concepts java smart for blog technology Java