搜索

首页  >  问答  >  正文

java - 关于int比较的返回值问题

            int result = Integer.compare(1,2);
            if(result > 0){
                return -1;
            }else if(result < 0){
                return 1;
            }else if(result == 0) {
                return 0;
            }

这段代码一直报缺少返回值错误,有点想不明白,int不久三种么? 等于0、大于0、小于0。还有其他情况么?

PHP中文网PHP中文网2812 天前323

全部回复(2)我来回复

  • 迷茫

    迷茫2017-04-17 17:50:50

    编译器没有人的智慧!
    这样写:

                int result = Integer.compare(1,2);
                if(result > 0){
                    return -1;
                }else if(result < 0){
                    return 1;
                }else{
                    return 0;
                }

    要保证分支全,这样编译器才认为所有的分支都被处理了!呵呵。

    回复
    0
  • 巴扎黑

    巴扎黑2017-04-17 17:50:50

    因为 你没有 else

    回复
    0
  • 取消回复