内置的reverse()方法
StringBuffer类为您提供了一个名为reverse()的方法。它反转当前StringBuffer对象的内容并返回结果 StringBuffer 对象。这是使用 Java 反转 Sting 的最简单方法。为此 -
-
通过传递所需的 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("Tutorialspoint");
System.out.println(result);
}
}
登录后复制
输出
tniopslairotuT
登录后复制
使用 toCharArray()
您还可以将字符串转换为字符数组并交换数组的字符。
要反转数组,请将第一个元素与最后一个元素和第二个元素以及倒数第二个元素,依此类推,如果数组长度为奇数,则保留中间元素不变。
如果 i 是数组的第一个元素 (length数组 –i-1) 的位置将是最后一个元素,因此,将 array[i] 与数组[(数组 –i-1)] 从头到尾交换数组的中点 -
示例
import java.util.Arrays;
public class StringReverse {
public static void main(String[] args) {
String str = "Tutorialspoint";
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]
登录后复制
以上就是在Java中,最简单的方法是如何反转一个字符串?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!