题解 | #进制转换#
进制转换
https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6
import java.util.*; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 String str = in.next(); str = str.toUpperCase(); Map<Character,Integer> map = new HashMap<>(); map.put('0',0); map.put('1',1); map.put('2',2); map.put('3',3); map.put('4',4); map.put('5',5); map.put('6',6); map.put('7',7); map.put('8',8); map.put('9',9); map.put('A',10); map.put('B',11); map.put('C',12); map.put('D',13); map.put('E',14); map.put('F',15); int res = 0; char[] nums = str.substring(2).toCharArray(); for (int i = 0; i < nums.length ; ++i) { res =res*16 + map.get(nums[i]); } System.out.println(res); } }
map没有考虑0的情况,弄了好久