Я пытаюсь вернуть определенную переменную в различных типах массивов, которые я могу использовать только универсальным методом. Однако, когда я пытаюсь сделать метод поиска, я продолжаю получать эту ошибку. Кто-нибудь может дать мне некоторое представление, как это исправить?
Я использую Drjava.
Это оператор вызова:
System.out.printf( "%nThe item returned from integerArray is: %s",
returnItem( integerArray,
2 ) );
System.out.printf( "%nThe item returned from doubleArray is: %s",
returnItem( doubleArray,
2 ) );
System.out.printf( "%nThe item returned from characterArray is: %s",
returnItem( characterArray,
2 ) );
System.out.printf( "%nThe item returned from petArray is: %s",
returnItem( petArray,
2 ) );
Это мой метод поиска:
public static < T> int returnItem( T[ ] inputArray, int key ){
// ERROR: incompatible types: T cannot be converted to int
for ( int element : inputArray ){
if( key == element ){
return element;
}
}
return -1;
} // end method returnItem
Элемент, возвращаемый из целочисленного массива: 3
Элемент, возвращаемый из целочисленного массива: 3.3
Элемент, возвращаемый из целочисленного массива: L