閱讀993 返回首頁    go 阿裏雲 go 技術社區[雲棲]


用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);
		
	}


}


最後更新:2017-04-02 22:16:31

  上一篇:go Js中實現圖片隨鼠標移動——ClientX,ClientY,Position
  下一篇:go 用C語言編寫函數計算子字符串substr在主字符串mainstr中的索引值