Когда я добавляю некоторые элементы в Java Hashtable
, их порядок отличается от .NET Hashtable
. Можно ли как-то убедиться, что .NET Hashtable
будет иметь тот же порядок, что и Java Hashtable
?
Я пытаюсь портировать Java-код на C #. Код Java использует Hashtable
для отслеживания некоторых данных. Когда я проверяю, чтобы увидеть порядок , данные извлекаются, когда я перебираю либо Java Hashtable
, либо .NET Hashtable
(через Enumerator
), каждый из них последовательно имеет одинаковые данные, в том же порядке ... но каждый код на основе имеет другой порядок.
Можно ли как-нибудь сделать так, чтобы данные .NET Hashtable
были в том же порядке, что и Java Hashtable
?
Я понимаю, что Hashtable
не обрабатывает заказы - поэтому я чувствую, что ничего нельзя сделать. Я также не могу изменить тип данных в коде Java с .. скажем .. Hashtable
на что-то другое.
Вот некоторые данные, иллюстрирующие мою ситуацию.
Данные, добавленные последовательно для любой кодовой базы: -
- число | someData
- pagenum | someData
- х | someData
- верх | someData
Java-код:
private Hashtable identifiers = new Hashtable();
...
identifiers.put(symbol, identifier);
Вывод Java через итератор через перечислитель:
.NET код:
private Hashtable Identifiers = new Hashtable();
...
Identifiers.Add(symbol, identifier);
.NET вывод через итерацию по перечислителю.
Есть идеи или предложения?