21xrx.com
2024-11-03 21:56:08 Sunday
登录
文章检索 我的文章 写文章
Java面试突击班:如何实现字符串反转?
2023-06-13 10:04:31 深夜i     --     --
Java面试 字符串反转 StringBuilder 递归

如果你正在准备Java面试,那么字符串反转这个经典问题肯定是绕不过去的。今天我们就来深入了解如何实现字符串反转的方法,以及如何在面试中给出正确的答案。下面是一个简单的案例:


public class ReverseString {

 public static void main(String[] args) {

  String str = "Hello World";

  System.out.println(reverse(str));

 }

 public static String reverse(String str) {

  StringBuilder sb = new StringBuilder(str);

  sb.reverse();

  return sb.toString();

 }

}

上面的代码使用了StringBuilder的reverse()方法来实现字符串反转。我们通过StringBuilder实例化一个可变字符串对象,然后调用它的reverse()方法来反转字符串。最后,我们使用toString()方法将其转换为String类型,并返回结果。

除了使用StringBuilder外,我们还可以通过递归实现字符串反转。下面是递归实现的代码:


public class ReverseString {

 public static void main(String[] args) {

  String str = "Hello World";

  System.out.println(reverse(str));

 }

 public static String reverse(String str) {

  if (str == null || str.length() <= 1)

   return str;

  

  return reverse(str.substring(1)) + str.charAt(0);

 }

}

该代码使用递归来实现。当我们传入一个字符串时,如果该字符串为空或长度为1,则直接返回该字符串。否则,我们将该字符串的第一个字符排在后面,然后再递归调用reverse()方法。

最后,我们需要注意的是,在面试时,我们应该能够同时掌握这两种方法,并根据具体问题的要求选择最合适的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复