题解 | #字符串变形#
字符串变形
https://www.nowcoder.com/practice/c3120c1c1bc44ad986259c0cf0f0b80e
import java.util.*;
import java.util.stream.Collectors;
public class Solution {
public String trans(String s, int n) {
if("".equals(s.trim())){
return s;
}
boolean flag = s.endsWith(" ");
List<String> list = new ArrayList<>();
String[] split = s.split(" ");
for (int i = split.length - 1; i >= 0; i--) {
list.add(split[i]);
}
String newString = list.stream().map(x -> change(x)).collect(
Collectors.joining(" "));
return flag ? " " + newString : newString;
}
// ascii码转换大小写 a-z 97-122 A-Z 65 -90
public String change(String s) {
char[] original = s.toCharArray();
StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < original.length; i++) {
int ascii = original[i];
if (ascii < 97) {
original[i] = toUpCase(original[i]);
} else {
original[i] = toLowCase(original[i]);
}
stringBuffer.append(original[i]);
}
return stringBuffer.toString();
}
public char toLowCase(char c) {
int cInt = c;
cInt = cInt - 32;
return (char) cInt;
}
public char toUpCase(char c) {
int cInt = c;
cInt = cInt + 32;
return (char) cInt;
}
}
查看16道真题和解析
SHEIN希音成长空间 434人发布