用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