a ='3',b ='4'...如何在不更改任何值的情况下从char更改为数字?

时间:2013-03-12 09:06:32

标签: java

public class Exer4 {


    public static void main(String[] args) {
        char a = '3';
        char b = '4';
        char c = '2';
        int resultat;
        resultat = a*b/c;

        System.out.println("Result of "+a+"*"+b+"/"+c+" = "+ resultat);
    }
}

我希望结果为:6(因为它是3 * 4/2),但事实并非如此。

4 个答案:

答案 0 :(得分:5)

既然是作业,我不会透露解决方案。但是,您应该查看Integer.parseInt()

答案 1 :(得分:1)

您应该将变量指定为int a = 3等,因为它们是整数值而不是字符。字符'3'与整数3不同。

答案 2 :(得分:0)

您必须将其解析为int s 请尝试以下方法:

public static void main(String[] args) {
    char a = '3';
    char b = '4';
    char c = '2';
    int resultat;
    resultat = Integer.parseInt(a)* Integer.parseInt(b) / Integer.parseInt(c);

    System.out.println("Result of "+a+"*"+b+"/"+c+" = "+ resultat);
}

根据您的值,最好将它们解析为Double

或者,您可以直接轻松使用int

public static void main(String[] args) {
        int a = 3;
        int b = 4;
        int c = 2;
        int resultat;
        resultat = a * b / c;

        System.out.println("Result of "+a+"*"+b+"/"+c+" = "+ resultat);
    }

答案 3 :(得分:0)

使用Character.getNumericValue(Char a)
根据你的问题,你可以通过

来做到这一点
int aa=Character.getNumericValue(a); 
int bb=Character.getNumericValue(b);
int cc= Character.getNumericValue(c);
resultat = aa*bb/cc;

System.out.println("Result of "+a+"*"+b+"/"+c+" = "+ resultat);