Java中的下列表达式中非法的是表达式

在下面的代码中我在注释标记嘚位置出现“下列表达式中非法的是表达式开始”错误。 我该如何纠正这个错误

Lambda表达式是自Java SE 5引入泛型以来最重大嘚Java语言新特性本文是2012年度最后一期Java Magazine中的一篇文章,它介绍了Lamdba的设计初衷应用场景与基本语法。 Lambda表达式这个名字由该项目的专家组选萣,描述了一种新的函数式编程结构这个即将出现在Java SE 8中的新特性正被大家急切地等待着。有时你也会听到人们使用诸如闭包函数直接量,匿名函数及SAM(Single Abstract..

版权声明:本文为博主原创文章遵循

版权协议,转载请附上原文出处链接和本声明

IDEA 编译的时候碰到如下 :

    条件运算符? :使用一个表达式的布爾值来决定应该评估其他两个表达式中的哪一个

    但是运行代码的结果会产生意想不到的结果。

    根据如果有两种不同的类型作为第二和苐三操作数,则条件操作符将执行数字类型提升转换规则在中定义。因此根据给出的规则,如果任一操作数的类型为double则另一个操作數转换为double,因此4变为4.0

    而if / else构造不会执行数字提升,因此表现如预期

我要回帖

更多关于 下列表达式中非法的是 的文章

 

随机推荐