题解 | #字符串变形#
字符串变形
http://www.nowcoder.com/practice/c3120c1c1bc44ad986259c0cf0f0b80e
首先根据空格切分字符串得到各个单词,然后将单词大小写交换,输出字符串。
import java.util.*;
public class Solution {
public String trans(String s, int n) {
// write code here
// write code here
// 对每一个空格进行一次切分,防止出现"word hello"的情况
String[] arr = s.split(" ", -1);
StringBuilder res = new StringBuilder();
// 从右边开始处理并收集结果,注意空格的添加
for(int i = arr.length - 1; i >= 0; i--) {
res.append(reverse(arr[i]));
if(i == 0) {
break;
}
// 字符串间隔都要加上空格
res.append(" ");
}
return res.toString();
}
// 大小字母转换
private String reverse(String s) {
StringBuilder builder = new StringBuilder();
for(char c : s.toCharArray()) {
if(Character.isUpperCase(c)) {
builder.append(Character.toLowerCase(c));
} else {
builder.append(Character.toUpperCase(c));
}
}
return builder.toString();
}
}