Java 如何为有序数组列表实现get(int-index)方法

Java 如何为有序数组列表实现get(int-index)方法,java,Java,该方法应返回给定索引处的项。如果索引无效,则引发异常。如果给定索引中有一个项,那么它还应该返回找到的项的索引;如果没有,那么如果该项不在数组中,那么它应该返回-1 这就是我到目前为止所做的: public T get(int index){ int num=-1; if(index<0 || index>numItems){ throw new ArrayIndexOutOfBoundsException("Index is out of bo

该方法应返回给定索引处的项。如果索引无效,则引发异常。如果给定索引中有一个项,那么它还应该返回找到的项的索引;如果没有,那么如果该项不在数组中,那么它应该返回-1

这就是我到目前为止所做的:

public T get(int index){
      int num=-1;
      if(index<0 || index>numItems){
        throw new ArrayIndexOutOfBoundsException("Index is out of bounds: "    + index);
      }
      else
        return sortedArray[index];
}

我认为你误解了函数的基本规则。他们只能归还一件东西。看起来您正在尝试返回T和int。这是不可能的。你的要求也没有多大意义。听起来好像您正在获取一个索引,您只需返回索引处的项,这可以通过[]运算符轻松完成,但您说您要返回找到的项的索引?找到的项目位于传递给函数的索引处。

您已经发布了需求和代码,但没有问题-您的具体问题是什么?你的代码怎么了?是编译吗?不跑步?行为不端?这看起来不对:回报指数;您不返回与此索引对应的项吗?SorterDarray[索引]?返回后无任何内容SorterDarray[索引];将永远执行。对此感到抱歉。它无法编译。我得到一个错误:不兼容的类型:int无法转换为T@HovercraftFullOfEelsBecause你说回报指数;和index是一个int。与num相同。要求该方法应在给定的索引处返回项。如果该索引中有一个项目,它还应该返回索引号。如果没有,那么它应该返回-1。@Gavin如果已经给了索引,为什么还要返回该项的索引?该方法应该返回该项,因此无法让该方法也返回索引号。索引是由调用你的方法的人给出的,他已经知道了索引,你为什么要再次返回它呢?哦,好吧,现在更有意义了。如果该项不在数组中,那么返回-1怎么样@Gavin@RRTW是的,我明白你的意思。非常感谢。