Вы избавите себя от множества неприятностей, если будете использовать объекты вместо массивов для хранения продуктов. Например.,
class Product {
String name;
double price;
}
(при необходимости добавьте модификаторы доступа, сеттеры / геттеры и конструкторы)
Теперь вы можете легко получить доступ к множеству продуктов без преобразования типов.
Product[] array = new Product[3];
array[0] = new Product();
array[0].name = "iPad";
array[0].price = 123.4;
Или, если вы добавите конструктор,
Product[] array = {
new Product("iPad", 123.4),
new Product("iPod", 234.5),
new Product("iPhone", 345.6)
};
Чтобы разрешить сортировку, вы можете реализовать интерфейс Comparable
и затем вызвать Arrays.sort(myProductArray)
:
class Product implements Comparable<Product> {
String name;
double price;
public int compareTo(Product p) {
return ((Double) price).compareTo(p.price);
}
}