Given a string, you need to reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order.
Example 1:
Input: "Let‘s take LeetCode contest" Output: "s‘teL ekat edoCteeL tsetnoc"
Note: In the string, each word is separated by single space and there will not be any extra space in the string.
大致意思是字符串按空格分隔,分隔后每个部分翻转,再组成新的字符串,要求保留空格。
思路很简单,按空格分隔后翻转再拼接即可
class Solution { public String reverseWords(String s) { String [] arr = s.split("\\s+"); String result = ""; for(int i=0;i<arr.length;i++) { result = result+" "+reverseString(arr[i]); } return result.substring(1); } /* * 翻转字符串 */ public static String reverseString(String s1) { return new StringBuffer(s1).reverse().toString(); } }