Java键盘输入八进制和十六进制
2017-12-01 22:02
148 查看
今天有同学问我Java怎么用键盘输入十六进制数转换成十进制数输出,我查了一下,发现网上的部分回答不够清楚,很多人不理解为什么输入人后回车就报错了(代码无误)。如下:
查看API后发现,Integer类里面的静态方法parseInt(String s, int radix): 这个函数在用Scanner输入字符串的时候,不能有前导0x或者0,后面的radix参数就是指定你输入的进制类型,例子:
这样就转换成功了,切记,输入的字符串一定要和后面的radix相匹配,例如radix = 8,输入9,八进制中没有9,所以程序抛出异常。
另外Integer类里面还提供了一个静态方法decode(String nm),该函数将String对象解码为Integer对象返回,这里的参数nm,需要带前导,指定代表进制类型。例子:
本人刚开始试着写博客,有什么错误或者描述不当的地方还请大家指出,谢谢大家的查看!
public static void main(String argv)throws Exception { Scanner sc = new Scanner(System.in); System.out.print("\n请输入一个16进制数:"); String str = sc.next(); int n = Integer.parseInt(str, 16); System.out.println("输入 " + str + ",转换成整数是 " + n); }我试着运行了一下这段代码,输入0x39,回车,然后报错了:Exception in thread "main" java.lang.NumberFormatException: For input string: "0x39"(数字格式异常)
查看API后发现,Integer类里面的静态方法parseInt(String s, int radix): 这个函数在用Scanner输入字符串的时候,不能有前导0x或者0,后面的radix参数就是指定你输入的进制类型,例子:
public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String s; int b; s = scanner.nextLine(); b = Integer.parseInt(s, 16); System.out.println(b); }
这样就转换成功了,切记,输入的字符串一定要和后面的radix相匹配,例如radix = 8,输入9,八进制中没有9,所以程序抛出异常。
另外Integer类里面还提供了一个静态方法decode(String nm),该函数将String对象解码为Integer对象返回,这里的参数nm,需要带前导,指定代表进制类型。例子:
public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String s; s = scanner.next(); Integer a; a = Integer.decode(s); System.out.println(a); }
本人刚开始试着写博客,有什么错误或者描述不当的地方还请大家指出,谢谢大家的查看!
相关文章推荐
- 汇编语言:从键盘输入十进制数,输出该十进制数的十进制,二进制(B),十六进制(H),八进制(Q)表示
- 汇编语言(二):从键盘输入十进制数,输出该十进制数的十进制,二进制(B),十六进制(H),八进制(Q)表示
- Java中八进制、十六进制表示
- 源代码Bwriter.java,从键盘输入一系列字符串,写入到磁盘
- Java中获取键盘输入值的三种方法
- Java中获取键盘输入值的三种方法
- 黑马程序员——Java 键盘输入
- 【程序50】TestStu.java 题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩), //计算 出平均成绩,况原有的数据和计算出的平均分数存放在磁盘
- java 从键盘读入一字符,循环打印输出,遇到字符9退出,可以根据不同输入执行不同任务
- 20160727------JAVA基础语法【运算符、键盘输入】
- 初学Java,IO之使用转换流,读取键盘输入(四十三)
- java中表示八进制和十六进制
- [JAVA]二进制,八进制,十六进制,十进制间进行相互转换
- 解决JAVA的键盘输入问题
- Java中获取键盘输入值的三种方法
- Java基础之运算符、键盘输入以及流程控制语句
- java实现从键盘接收一个输入字符
- Java键盘输入方式总结
- java 键盘输入多种方法
- C/C++输入输出八进制,十六进制的方式