Java中char 转化为int 的两种方法

来源:互联网 发布:新加坡签证 淘宝 编辑:程序博客网 时间:2024/05/31 18:54

今天机试过程中遇到一个问题: 如何把 char ‘9’ 转为 int 9, 大家应该知道,不能直接转化,那样得到是‘9’的Ascii. 如下面:

    

public class IntAndCharConvertor {public static void main(String[] args) {char numChar = '9';int  intNum = (int)numChar; System.out.println(numChar + ": " + intNum);}}

运行结果: 

9: 57
那么怎么把char'9' 转为 int 9 呢?

方法一: 先把char转为char[1]的数组,然后转为string,最后利用Integer中parserInt方法,此方法要创建多个对象,要消耗许多内存。

方法二: 利用char的封装类 character, 通过如下静态方法就可以直接实现。

    public static int getNumericValue(char ch) {        return getNumericValue((int)ch);    }

例子:
package com.albertshao.interview;public class IntAndCharConvertor {public static void main(String[] args) {char numChar = '9';int  intNum = (int)numChar;System.out.println(numChar + ": " + intNum);//method 1:char[] charArray = {numChar};intNum = Integer.parseInt(new String(charArray));System.out.println("method 1: " + numChar + ":" + intNum);//method 2:System.out.println("method 2: " + numChar + ":" + Character.getNumericValue(numChar));}}
运行结果

9: 57method 1: 9:9method 2: 9:9



0 0