我必须反转用户输入的字符串的第一个和最后一个字母,然后打印该单词,并反转字符串的第一个和最后一个字母,但不使用循环,
charAt
和substring()
。我只能使用 length()
、if
语句和转义字符,但我不知道这是怎么可能的。抱歉,如果这令人困惑,例如输入的 5 个字母单词是 foods
,它将变成 s-ood-f
我尝试使用转义字符,如
\t
\b
,但我不知道它是否可以在这里做任何事情
正如@DevilsHnd 所说: 您可以使用 StrinBuilder 来实现这一点,例如下面
String word = "foods";
if (word.length() == 5){
System.out.println(new StringBuilder(word).reverse());
} else {
System.out.println("TODO");
}
您可以检查此代码。它使用 Stream 和 Collections 来反转字符串。然而,我觉得,仅仅使用 Stream 和 Collection 来反转字符串就太过分了。
public static String reverseString(String str) {
StringBuilder reverseString = new StringBuilder();
if (str.length() == 5) {
List<Character> characterStream= str.chars().mapToObj(c -> (char) c)
.collect(Collectors.toList());
Collections.reverse(characterStream);
for (Character ch: characterStream){
reverseString.append(Character.toString(ch));
}
return reverseString.toString();
}
else return null;
}