首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么java.lang.Integer和java.lang.Double的最小上界被推断为非循环类型?

为什么java.lang.Integer和java.lang.Double的最小上界被推断为非循环类型?

提问于 2018-03-22 02:33:00
回答 1关注 0查看 141

考虑这个代码:

代码语言:javascript
复制
val foo = if(true) 
            new java.lang.Double(4) 
          else
            new java.lang.Integer(4)

推断的类型foo是:

代码语言:javascript
复制
Number with Comparable[_ >: Double with Integer <: Number with 
  Comparable[_ >: Double with Integer <: Number]]

所以基本上编译器会在第三次递归之后在界限上循环并中止。

为什么以下不够?

代码语言:javascript
复制
Number with Comparable[_ >: Double with Integer <: Number]

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档