巧用java工具类解决进制转换

在这里插入图片描述
巧用java工具类解决进制转换_第1张图片

import java.util.*;
import java.lang.Math;
public class Main {
     
    public static void main(String[] args) {
     
        Scanner in = new Scanner(System.in);
        List<String> list=new ArrayList<>();
        while ((in.hasNext())) {
     
            int N = in.nextInt();
            for (int i = 0; i < N; i++) {
     
                String A = in.next();
                list.add(A);
            }
            for (int i = 0; i < list.size(); i++) {
     
                System.out.println(Integer.toOctalString(ConvertDecimal(list.get(i))));
            }
            list.clear();
        }
    }
    public static Integer ConvertDecimal(String A){
     
        int sum=0;
        char[] B=A.toCharArray();
        int count=0;
        int a1=0;
        for(int i=B.length-1;i>=0;i--){
     
            if(String.valueOf(B[i]).equals("A")){
     
                a1= 10;
            }
            else if(String.valueOf(B[i]).equals("B")){
     
                a1= 11;
            }
            else if(String.valueOf(B[i]).equals("C")){
     
                a1= 12;
            }
            else if(String.valueOf(B[i]).equals("D")){
     
                a1= 13;
            }
            else if(String.valueOf(B[i]).equals("E")){
     
                a1= 14;
            }
            else if(String.valueOf(B[i]).equals("F")){
     
                a1= 15;
            }
            else {
     
              a1= Integer.parseInt(String.valueOf(B[i]));
            }
            sum+=Math.pow(16,count)*a1;
            count++;
        }
        return sum;
    }

}

你可能感兴趣的:(日常刷题记录,java,进制转换,蓝桥杯)