Я понимаю, что radix для функции Integer.parseInt() является базой для преобразования строки в. Не следует, чтобы 11 базовых 10, преобразованных с основанием/основанием 16, были B вместо 17?
Следующий код печатает 17 в соответствии с учебником:
public class Test {
public static void main(String[] args) {
System.out.println( Integer.parseInt("11", 16) );
}
}