Java實現任意進制轉換


實現代碼:

public class BinaryTest {
	
		//設置字符數組
		//可以添加任意不重復字符,提高能轉換的進制的上限
		static char chs[] = new char[36];
		static {
			for(int i = 0; i < 10 ; i++) {
				chs[i] = (char)('0' + i);
			}
			for(int i = 10; i < chs.length; i++) {
				chs[i] = (char)('A' + (i - 10));
			}
		}
		
		/**
		 * 轉換方法
		 * @param num		元數據字符串
		 * @param fromRadix	元數據的進制類型
		 * @param toRadix	目標進制類型
		 * @return
		 */
		static String transRadix(String num, int fromRadix, int toRadix) {
			int number = Integer.valueOf(num, fromRadix);
			StringBuilder sb = new StringBuilder();
			while (number != 0) {
				sb.append(chs[number%toRadix]);
				number = number / toRadix;
			}
			return sb.reverse().toString();
			
		}
		//測試
		public static void main(String[] args) {
			System.out.println(transRadix("YGL", 36, 35));
		}
	}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM