思路之一如下:
1、按空格划分成字符串数组
2、数组元素顺序入栈
3、数组元素逆序出栈
4、大小写互转
import java.util.*;
public class Transform {
public String trans(String s, int n) {
//空格划分成数组
String[] arr = s.split(" ",-1);
//数组元素入栈
Stack<String> stack = new Stack<String>();
for(String str:arr){
stack.push(str);
}
//逆序出栈
StringBuilder sb = new StringBuilder();
while(!stack.isEmpty()){
sb.append(stack.pop()+" ");
}
//去除最后一个空格
sb.deleteCharAt(sb.length()-1);
//大小写互换
return reverse(sb.toString());
}
public String reverse(String s){
StringBuilder sb = new StringBuilder();
for (int i = 0; i < s.length(); i++) {
char temp = s.charAt(i);
if (temp >= 'a' && temp <= 'z') {
temp = (char)(temp-32);
}else if(temp >= 'A' && temp <= 'Z') {
temp = (char)(temp+32);
}
sb.append(temp);
}
return sb.toString();
}
}
京公网安备 11010502036488号