栈
 
public class MyStack {
          
   
    private int[] array;
    private static int size;
    private static final int INITSIZE = 100;
    //初始化栈
    public MyStack(){
          
   
        array =  new int[INITSIZE];
    }
    //扩容
    private void ensureCapacity(){
          
   
        if(size == array.length){
          
   
            Arrays.copyOf(array,array.length+(array.length>>1));
        }
    }
    //判断栈空不空
    public boolean isEmpty(){
          
   
        return this.size == 0;
    }
    //压栈
    public void push(int value){
          
   
        ensureCapacity();
        array[size] = value;
        size++;
    }
    //出栈
    public void pop(){
          
   
        if(isEmpty()){
          
   
            return;
        }
        size--;
    }
    //返回栈顶元素
        public int peek(){
          
   
        if(size == 0){
          
   
            throw new EmptyStackException();
        }
        return  array[size-1];
    }
} 
进制转换
 
public class HexTranslated {
          
   
    //新建栈
    private MyStack myStack = new MyStack();
    //进制转换
    public void go(int value,int mod){
          
   
        //商
        int conslut = value;
        //余数
        int remainder = 0;
        while (conslut >= mod){
          
   
            //取余
            remainder = conslut % mod;
            myStack.push(remainder);
            conslut /= mod;
        }
        myStack.push(conslut);
    }
    public StringBuilder show(){
          
   
        StringBuilder stringBuilder = new StringBuilder();
        System.out.print("转换结果为: ");
        while (!myStack.isEmpty()){
          
   
            stringBuilder.append(myStack.peek()+" ");
            myStack.pop();
        }
        return stringBuilder;
    }
} 
测试
 
public class Test {
          
   
    public static void main(String[] args) {
          
   
        HexTranslated hexTranslated =  new HexTranslated();
        hexTranslated.go(12,2);
        System.out.println(hexTranslated.show());
        hexTranslated.go(58,8);
        System.out.println(hexTranslated.show());
    }
} 
测试结果