在Java中反转字符串的最简单方法是什么?
内建reverse()
方法
StringBuffer类为您提供了一个名为的方法。它反转当前StringBuffer对象的内容,并返回结果StringBuffer对象。这是使用Java逆转Sting的最简单方法。这样做-reverse()
通过传递所需的String作为参数来实例化StringBuffer类。
调用reverse()
创建对象的方法。
使用toString()
方法再次将其转换为String。
示例
public class Sample { public static void main(String args[]) { String str = new String("Hello how are you"); StringBuffer sb = new StringBuffer(str); String str2 = sb.reverse().toString(); System.out.println(str2); } }
输出结果
uoy era woh olleH
让我们观察另外两种反转字符串的方法
使用递归
递归是一个在自身内部调用函数的过程,以下java程序使用递归将Sting反向-
示例
public class StringReverse { public String reverseString(String str) { if(str.isEmpty()) { return str; }else { return reverseString(str.substring(1))+str.charAt(0); } } public static void main(String[] args) { StringReverse obj = new StringReverse(); String result = obj.reverseString("Nhooo"); System.out.println(result); } }
输出结果
tniopslairotuT
使用toCharArray()
您还可以将String转换为字符数组,并交换该数组的字符。
要反转数组,请将第一个元素与最后一个元素交换,将第二个元素与第二个最后一个元素交换,依此类推,如果数组的长度为奇数,则中间元素保持原样。
如果i是数组的第一个元素(数组–i-1的长度)将是最后一个元素,则从头到尾交换array[i]与数组[(array–i-1的长度)]。数组的中点-
示例
import java.util.Arrays; public class StringReverse { public static void main(String[] args) { String str = "Nhooo"; char[] myArray = str.toCharArray(); int size = myArray.length; for (int i = 0; i < size / 2; i++) { char temp = myArray[i]; myArray[i] = myArray[size - 1 - i]; myArray[size - 1 - i] = temp; } System.out.println("Array after reverse:: "); System.out.println(Arrays.toString(myArray)); } }
输出结果
Array after reverse:: [t, n, i, o, p, s, l, a, i, r, o, t, u, T]