请教各位,int avg2="78.5"+rise 为啥不行呢?

来源:2-9 Java中的自动类型转换

慕函数0481653

2022-04-18 12:26

public class HelloWorld{

    public static void main(String[] args) {

double avg1=78.5;

int rise=5;

int avg2="78.5"+rise;

System.out.println("考试平均分:"+avg1);

System.out.println("调整后的平均分:"+avg2);

}

}


写回答 关注

6回答

  • weixin_慕仙0249325
    2023-12-08 18:00:16

    public class HelloWorld{

        public static void main(String[] args) {

    double avg1=78.5;

    int rise=5;

    //           自动类型转换是需要满足特定的条件的 :

    //             目标类型大于源类型,如 double 类型长度为 8 字节, int 类型为 4 字节

    double avg2=avg1+rise;

    System.out.println("考试平均分:"+avg1);

    System.out.println("调整后的平均分:"+avg2);

    }

    }


  • EddieAQ
    2022-06-24 21:00:41

    有双引号的变量或值是String类型,与int类不兼容,所以"78.5"不能赋值给avg2

  • 慕标1060215
    2022-05-12 16:03:19

    double avg1=78.5;

    int rise=5;

    int avg2="78.5"+rise;

    int avg2 = "78.5" + rise;  //  其中--"  "--这个出现的为错误
    //  int 型是4字节   double  型是8字节  这个是强制类型转换
    
    double avg1 = 78.5;
    int    rise = 5;
    int    avg2 = (int)(78.5+5);
    System.out.println(avg2);
    //  输出结果为--83,


  • weixin_慕用5139663
    2022-05-02 11:54:05

    "这个里面" 的是String 类型你无法赋值给int 型。

  • 慕用1267954
    2022-05-01 20:13:09

    78.5已经赋值给avg1了


  • 有为小青年丶
    2022-04-18 16:26:50
    // 因为你定义的变量avg2是整形,需要强制转换类型
    int avg2 = (int)78.5 + rise;


Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题