问答详情
源自:3-2 Java中的算术运算符

请问这些代码有什么问题?运行不了

public class HelloWorld{

public static void main(String[] args){

double a=5.1;

double b=5.2;

int c;

c=(int)a+b;

System.out.println(c);

}

}


提问者:淡化了记忆 2017-07-30 18:25

个回答

  • 郭外斜柳
    2017-07-30 18:46:31
    已采纳

    c=(int)a+b;

    /*

    此处int(a)+b,相当于只将a变为int类型,然而b依然是double类型,应改为(int)(a+b);

    下面的是修改后的

    */

    public class HelloWorld{

    public static void main(String[] args){

    double a=5.1;

    double b=5.2;

    int c;

    c=(int)(a+b);

    System.out.println(c);

    }

    }


  • qq_凉城以北_2
    2017-07-30 18:40:53

    double a=5.1;

    double b=5.2;

    int c;

    c=(int) ((int)a+b);

    System.out.println(c);

    double--->int需要强制转换,而不是自动转换