通过实现此接口方法获得数组的长度?(初学者)



我只是想知道如何写方法

@Override
public int length() {
    return this.length();
    // TODO implement
}

这样,当您调用类似a.length()或s.length()之类的东西时,它将返回长度?(在这里s和a是阵列)

我的问题 -

我正在将其进行硬编码

return a.length;

因此,这不适用于其他一些名为Array。

预先感谢!

您可以将数组作为参数传递。

public int getLength(Object[] array) {
  return array.length;
}

不可能扩展数组类型,但是如果您确实想在数组中添加额外的方法,则可以创建类似的包装类:

public class Wrapper {
    private int[] someArray;
    public Wrapper(int size) {
        someArray = new int[size];
    }
    public int length() {
        return someArray.length;
    }
    public void addElem(int elem, int index) {
        someArray[index] = elem;
    }
    //Other methods...
}

但是,您不妨使用诸如java.util.ArrayList之类的类,因为这将为您提供大约相同的功能。

最新更新