Этот вопрос лучше всего задать на примере. Скажем, у меня есть таблица базы данных под названием «Автомобиль» со следующими столбцами:
(Марка *, Модель *, Кол-во дверей *, Описание, Цена, Пробег, Цвет)
Три кортежа: Make, Model и NumberOfDoors составляют уникальный первичный ключ в базе данных. Я сделал класс «Автомобиль» для каждой позиции, но если я хочу иметь коллекцию объектов автомобилей в виде
{(Модель конкретной марки и количество дверей, количество, текущие продажи), ...}
где первый элемент каждого элемента в коллекции - это уникальный тип автомобиля, второй - это счетчик (сколько у меня автомобилей этого типа), а третий элемент - это любые текущие продажи на этом make-model-doorcount, I ' m сталкивается с дилеммой структуры данных.
То, что я делал до сих пор, - это создание структуры, которая вписывается в хеш-таблицу, как показано ниже:
//This will be the unique key for the hashtable
dim uniqueID as String = myCar.make + "@" + myCar.model + "@" + myCar.doorCount
//This is the structure that will hold the perinent info about that unique
//car type
Structure inventory
Dim count as Integer
Dim currentSales as String
End Structure
На этом этапе я бы приступил к заполнению хеш-таблицы из таблицы базы данных, где ключ к хеш-таблице - это строка uniqueID, а значение - это экземпляр структуры «inventory». Это (на мой взгляд) очень неэлегантно, особенно взломанный uniqueID для хеш-таблицы. Есть ли лучшее решение для структуры данных для объектов, у которых первичный ключ состоит из нескольких значений?