Discuss / Java / while循环压栈

while循环压栈

Topic source

I WILL.

#1 Created at ... [Delete] [Delete and Lock User]

import java.util.Deque;

import java.util.*;

public class Main {

    public static void main(String[] args) {

        String hex = toHex(12500);

        if (hex.equalsIgnoreCase("30D4")) {

            System.out.println("测试通过");

        } else {

            System.out.println("测试失败");

        }

    }

    static String toHex(int n) {

        Deque<Integer> deque = new LinkedList<>();

        StringBuilder s1 = new StringBuilder();

        while(n%16!=0||n/16!=0){

            deque.push(n%16);

            n = n/16;

        }

        while(!deque.isEmpty()){

            int s2 = deque.pop();

            if(s2>9){

                switch (s2){

                    case 10:s1.append("A");

                    break;

                    case 11:s1.append("B");

                    break;

                    case 12:s1.append("C");

                    break;

                    case 13:s1.append("D");

                    break;

                    case 14:s1.append("E");

                    break;

                    case 15:s1.append("F");

                }

            }else{

                s1.append(Integer.toString(s2));

            }

        }

        return s1.toString();

    }

}


  • 1

Reply