题解 | #进制转换#

进制转换

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


import java.util.Scanner;

public class Trans16_10 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String string = null;
        // 注意 hasNext 和 hasNextLine 的区别
        while (scanner.hasNext()) { // 注意 while 处理多个 case
            string = scanner.next();
            System.out.println("当前读取到为:" + string);
            int ans = 0;
            int length = string.length();
            for (int i = length - 1; i > 1; i--) {
                ans = (int) (ans + chatInt(string.charAt(i)) * (Math.pow(16, length - i - 1)));
                //Math.pow(a,b):a^b.返回值为double,强转为int
                System.out.println("当前数字乘以16后的结果:" + ans);
            }
            System.out.println(ans);
        }
    }

    private static int chatInt(char c) {
        System.out.println("当前字母为:" + c);
        if ((c >= '0') && (c <= '9')) {
            return c - '0';
        } else {
            int num = c - 'A' + 10;
            System.out.println("当前字母代表的数字为:" + num);
            return num;
        }
    }
}

全部评论

相关推荐

11-23 15:33
已编辑
门头沟学院 Java
CUTMR:换账号试试重启推荐算法,我换账号之后回复率还不错,约莫有个20%左右的消息回复率,前几页、主动招呼的HR也开始符合我期望薪资,此前的大号从招呼、回复、前几页的岗位薪资在涨幅30%+以上 用着用着聊着聊着就变成-20%,而且我开通会员之后直接0面试
点赞 评论 收藏
分享
我要娶个什么名:学长你电脑闹鬼了
点赞 评论 收藏
分享
12-24 20:52
武汉大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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