当前位置: 移动互联网学院 > Java培训 > JAVA开发 > Java字符串反转方法的代码实现
Java字符串反转方法的代码实现 时间:2017-08-21     来源:互联网

字符串我们都很熟悉,在Java开发中有时会遇到需要进行字符串反转的情况,那么该如何实现Java字符串反转呢?这里华清Java学院小编就和大家分享一下Java字符串反转方法的代码实现。

Java字符串反转方法的设计思路:

1. 首先将字符串转换成数组,一个数组元素放一个字符。

2. 循环遍历字符串,将所有字符串前后字符调换位置,比如:第一个和后一个调换,第二个和倒数第三调换,第三个和倒数第三调换,直到所有字符调换完毕。

3. 通过以上两步得到了字符顺序完全颠倒的新字符串。

Java字符串反转方法的代码实现:

public class reverse {

//public static void main(String[] args)

public String swap(String str){

//String str = "1 2 3 4 5";

char[] arr = str.toCharArray();

int begin=0; int end=arr.length-1;

while(begin < end) {

char temp = arr[begin];

arr[begin] = arr[end];

arr[end] = temp;

begin++;

end--;

}

//for (int i = 0; i < arr.length-1; i++)

// System.out.println(arr[i]);

return new String(arr).toString();

}

public static void main(String[] args) {

String str = "a b c d";

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

}}

虽然上面的方法可以实现字符串翻转,如果我们想把How are you翻转成you are How呢?上面的方法只能转换为 uoy era woH

其实办法很简单,

以空格为分隔符,将空格之间的字符再次翻转就可以了。

public class reverse {

//public static void main(String[] args)

public void swap(char[] arr,int begin,int end){

//String str = "1 2 3 4 5";

while(begin < end) {

char temp = arr[begin];

arr[begin] = arr[end];

arr[end] = temp;

begin++;

end--;

}

//for (int i = 0; i < arr.length-1; i++)

// System.out.println(arr[i]);

// return new String(arr).toString();

}

public String revWord(String str){

char[] arr = str.toCharArray();

swap(arr,0,arr.length-1);

int begin=0;

for (int i=0;i

{if (arr[i]==' ')

{swap (arr,begin,i-1); begin=i+1;}

} return new String(arr);

}

public static void main(String[] args) {

String str = "how are you";

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

}}

X