用Java编写函数反转字符串
用Java编写函数反转字符串
如下所示,下面是两种反转字符串的方法。
实践过程中发现,如果是中文字符串,第二种反转方法会输出乱码。
因此,建议首选第一种方法。
- /**
- * 反转字符串 演示实例
- * 假设有一个字符串 “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);
- }
- }
评论暂时关闭