题解 | #进制转换#

进制转换

http://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            String str = in.next();
            char[] arr = str.toCharArray();
            if (arr[0] == '0' && arr[1] == 'x') {
                int x=进制转换(arr);
                System.out.println(x);
            }
        }
    }

    public static int 进制转换(char[] ary) {
        int COUNT = 0;
        int k=0;
        for (int i = ary.length - 1; i >= 2; i--) {
                COUNT = (int)(当前字符数值(ary[i])  *Math.pow(16,k )+ COUNT);
                k++;
        }
        return COUNT;
    }

    public static int 当前字符数值(char sh) {
        int cnt=0;
        switch (sh) {
            case '0':cnt= 0;break;
            case '1':cnt= 1;break;
            case '2':cnt= 2;break;
            case '3':cnt= 3;break;
            case '4':cnt= 4;break;
            case '5':cnt= 5;break;
            case '6':cnt= 6;break;
            case '7':cnt= 7;break;
            case '8':cnt= 8;break;
            case '9':cnt= 9;break;
            case 'A':cnt= 10;break;
            case 'B':cnt= 11;break;
            case 'C':cnt= 12;break;
            case 'D':cnt= 13;break;
            case 'E':cnt= 14;break;
            case 'F':cnt= 15;break;

        }
        return cnt;
    }

}

全部评论

相关推荐

10-09 19:35
门头沟学院 Java
洛必不可达:java的竞争激烈程度是其他任何岗位的10到20倍
点赞 评论 收藏
分享
10-05 23:02
东北大学 Java
我说句实话啊:那时候看三个月培训班视频,随便做个项目背点八股,都能说3 40w是侮辱价
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务