利用Stack把一个给定的整数转换为十六进制

利用Stack把一个给定的整数转换为十六进制


代码如下:

import java.util.Deque;
import java.util.LinkedList;
import java.util.*;
public class Main {
	public static void main(String[] args) {
		String hex = toHex(12500);
		System.out.println(hex);
		if (hex.equalsIgnoreCase("30D4")) {
		     System.out.println("测试通过");
        } else {
            System.out.println("测试失败");
        }
    }
	
	 static String toHex(int n) {
		 Deque<String> stack = new LinkedList<>();
		 String sHex = "";
		 while (n != 0) {
			 Integer r = n % 16;
			 String s =  Integer.toHexString(r);
			 stack.push(s);
			 n /= 16;
		 }
		 System.out.println("SIZE:" + stack.size());
		 while (!stack.isEmpty()) {
			  sHex += stack.pop();		  
			  System.out.println("shex:" + sHex);
		 }
	        return sHex;
	    }
}

你可能感兴趣的:(Java,java,stack)