题解 | #进制转换#

进制转换

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

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;


public class Main {
    //HJ5 进制转换
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String str = input.next();
        String substring = str.substring(2);
        //[0XAA]
        char[] chars = substring.toCharArray();
//        System.out.println("chars中有"+ Arrays.toString(chars) );
        String string = Arrays.toString(chars);
//        System.out.println("string中有"+ string );
        ArrayList<Integer> integers = new ArrayList<>();
        int num = chars.length;
        for (int i = 0; i < num; i++) {
            if (chars[i] == 'A' || chars[i] == 'a') {
                integers.add(10);
            } else if (chars[i] == 'B' || chars[i] == 'b') {
                integers.add(11);
            } else if (chars[i] == 'C' || chars[i] == 'c') {
                integers.add(12);
            } else if (chars[i] == 'D' || chars[i] == 'd') {
                integers.add(13);
            } else if (chars[i] == 'E' || chars[i] == 'e') {
                integers.add(14);
            } else if (chars[i] == 'F' || chars[i] == 'f') {
                integers.add(15);
            } else {
                int i1 = string.indexOf(chars[i]);
                char c = string.charAt(i1);
                Character character = new Character(c);
                String string1 = character.toString();
                Integer integer = new Integer(string1);
                integers.add(integer);
            }
        }
//        System.out.println("list中有"+ integers);
        int count = 0;
        for (int i = 0; i < integers.size(); i++) {
            count += (int)(integers.get(i) * Math.pow(16, integers.size() - 1 - i));
        }
        System.out.println(count);
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务