我在java里定义了一个方法get 是获取线性表中的元素为:public int get(int index)
方法体里有个分支如果index超出了范围就返回null;但是null又不能返回
帮忙解决下,我不想方法改返回类型

解决方案 »

  1.   

    用个不可能用到的数字来代表null,譬如-999999
      

  2.   

    首先,你要搞清楚null和int是不能共存的,因为null是对象型的返回值,而int是基本类型。既然你说是线性表中的值,那么没有你返回-1不就好了?
      

  3.   

    Integer.MIN_VALUE代表就可以了。
      

  4.   

    实在不行,就返回Integer吧,这样就能满足你的要求了。
    public Integer get(int index){
    return null;
    }
      

  5.   

    Java code
    public Integer get(int index){
            return null;
        }
    return current.data;的类型怎么匹配的
      

  6.   

    是什么就直接return好了 Integer是int的包装类 
      

  7.   

    类型不匹配:不能从 int 转换为 Integer
      

  8.   

    那这个方法可不可以作其他的方法的int类型的参数使用?
      

  9.   

    public Integer get(int index) {
    Node current = front;
    if(index <= 0 || index >= length()) {
    return null;
    }
    else {
    for(int i = 1;i < index;i++) {
    current = current.next;
    }
    return current.data;//这一句有问题
    }
    }
      

  10.   

    public Integer get(int index){ 
            //如果index没有超出范围
            if(a[index]!=null){
                 return new Integer(index);
            }
            //如果index超出了范围
            else{
               retrun null;
            }
        }