您的位置:首页 > 编程语言 > Java开发

用Java编写函数反转字符串

2012-03-05 20:40 453 查看
如下所示,下面是两种反转字符串的方法。

实践过程中发现,如果是中文字符串,第二种反转方法会输出乱码。

因此,建议首选第一种方法。

/**
* 反转字符串 演示实例
* 假设有一个字符串 “ABCDEF”,反转后,输出“FEDCBA”
*/
package com.reverse;

/**
* @author snowdream
*
* @since 2012.03.05
*
*/
public class StringReverse {

/**
*
* ReverseString: 利用StringBuffer反转字符串
*
* @param      str  待反转字符串
* @return     String 已反转字符串
*/
public String ReverseString(String str){
StringBuffer mstr = new StringBuffer(str);

System.out.println("Reversed String : "+ mstr.reverse().toString());

return mstr.reverse().toString();
}

/**
*
* ReverseString1: 利用字符数组的方法反转字符串
*
* @param      str  待反转字符串
* @return     String 已反转字符串
*/
public String ReverseString1(String str){
byte[] mchars = str.getBytes();
byte temp = 0;
int length = mchars.length;

for(int i = 0; i < length/2 ;i++){
temp = mchars[i];
mchars[i] = mchars[length -1 -i];
mchars[length -1 -i] = temp;
}

String mstr = new String(mchars);

System.out.println("Reversed String : "+ mstr);

return mstr;
}

/**
* @param args
*/
public static void main(String[] args) {
StringReverse mReverse = new StringReverse();

//String str = "Hello World!";
String str = "你好 中国!";

mReverse.ReverseString(str);

mReverse.ReverseString1(str);

}

}


欢迎大家关注我的微信公众号:

微信公众号:sn0wdr1am

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java string byte class
相关文章推荐