如何在java中将原始类型数组作为对象数组传递?

时间:2016-01-30 01:08:35

标签: java arrays object primitive-types

我希望以下函数对所有数据类型都是通用的。但是,这不适用于原始数据类型。这是为什么? 任何人都可以解决这个问题吗?我将不胜感激。

private int getIndexOfElement(Object x, Object[] xArray){
        for(int i=0; i<xArray.length;i++){
            if(xArray[i]==x){
                return i;
            }
        }
        return  -1;
    }

1 个答案:

答案 0 :(得分:2)

您的方法getIndexOfElement(int,Object[])接受扩展Object的任何类型的数组。由于int是基本类型 - 不是类类型,因此您无法将int[]传递给该方法。但是,您可以使用Integer class:

    Integer[] ints = new Integer[]{1,2,3,4,5};
    Integer i = 5;
    int index = getIndexOfElement(i, ints);