这是我的代码。 我试图让String输入向后打印出来,但是每次运行时代码都没有打印出来,因为它被调用以反向打印。
mvc.perform(get(PORT_SCAN_URL)
.param("address", "192.168.1.100")
.param("port", "53"))
.andExpect(status().isBadRequest())
.andExpect(jsonPath("$.response").exists())
.andExpect(jsonPath("$.response.code", is(400)))
.andExpect(jsonPath("$.response.errors[0].message", is("Site local IP is not supported")));
答案 0 :(得分:3)
printBackwards
实际上只返回{{1}},但没有做任何其他事情。要打印返回的String
,您可以将其传递给String
方法。
println
或者,您可以public static void main(String[] args)
{
String msg;
Scanner scan = new Scanner(System.in);
System.out.print("Enter a string: ");
msg = scan.nextLine();
System.out.print("\nThe string backwards: ");
String reversed = printBackwards(msg);
System.out.println(reversed);
}
打印printBackwards
并保留主要方法:
String
答案 1 :(得分:2)
嗯,你忘了打印字母
public static void printBackwards(String s)
{
if (s.length() == 0) return ;
printBackwards(s.substring(1));
System.out.print(s.charAt(0));
}
答案 2 :(得分:0)
迭代:
static String printBackwards(String s) {
StringBuilder sb = new StringBuilder();
for(int i = s.length() - 1; i >= 0; --i)
sb.append(s.charAt(i));
return sb.toString();
}
递归:
static String printBackwards(String s) {
if(s.length() == 0)
return "";
return s.charAt(s.length() - 1) + reverseMe(s.substring(0,s.length()-1));
}
答案 3 :(得分:0)
您的代码调用printBackwards,但会立即丢弃输出。
尝试将main()的第6行更改为System.out.print(printBackwards(msg));
鉴于此,我还考虑将方法名称更改为reverseString(String)
。