尝试将字符串“绝不奇数”反转,因为它是回文(我想看看字符串是否为1)。某些字符串(例如“ racecar”)可以正常工作,但后者会产生怪异的结果。
Scanner inp = new Scanner(System.in);
System.out.print("In:");
String s = inp.nextLine();
for (int i = s.length() - 1; i>=0; i--) {
System.out.print(s.charAt(i));
}
输入“从不奇数或偶数”将输出“从无到有”。
那是为什么? 我不会使用StringBuilder,因为我们还没有学到。必须处于for循环中。
答案 0 :(得分:0)
因为空格仍然是字符。您正在反向打印该字符串中的每个字符,包括空格。
这正是您所期望的行为。
答案 1 :(得分:0)
不要在原始字符串中打印空格:
Scanner inp = new Scanner(System.in);
System.out.print("In:");
String s = inp.nextLine();
for (int i = s.length() - 1; i>=0; i--) {
if (s.charAt() != ' ') {System.out.print(s.charAt(i));}
}
答案 2 :(得分:0)
Scanner inp = new Scanner(System.in);
System.out.print("In:");
String s = inp.nextLine();
for (int i = s.length() - 1; i>=0; i--) {
if(s.charAt(i)==' ') {
continue;
}
else {
System.out.print(s.charAt(i));
}
}
尝试上面的代码