public class Solution {
public String reverseWords(String s) {
if(s==null||s.length()==0)
{
return "";
}
int start=0;
int end=s.length()-1;
while(start<=end&&s.charAt(start)==' '){start++;}
while(end>=start&&s.charAt(end)==' '){end--;}
String newString=s.substring(start,end+1);
String [] str=newString.split("\\s+");
StringBuilder sb=new StringBuilder();
if(str.length>1){
for(int i=str.length-1;i>0;i--){
sb.append(str[i]).append(" ");
}
sb.append(str[0]);
}
else sb.append(str[0]);
String Res=sb.toString();
return sb.length() == 0 ? "" : Res;
}
}
public String reverseWords(String s) {
if(s==null||s.length()==0)
{
return "";
}
int start=0;
int end=s.length()-1;
while(start<=end&&s.charAt(start)==' '){start++;}
while(end>=start&&s.charAt(end)==' '){end--;}
String newString=s.substring(start,end+1);
String [] str=newString.split("\\s+");
StringBuilder sb=new StringBuilder();
if(str.length>1){
for(int i=str.length-1;i>0;i--){
sb.append(str[i]).append(" ");
}
sb.append(str[0]);
}
else sb.append(str[0]);
String Res=sb.toString();
return sb.length() == 0 ? "" : Res;
}
}
注意:
1,要首先判断是否以空格开头
2,当只有一个字符串时,记得后面不要再加空格了
3, 分隔有多个空格时,不能简单调用split函数