|
|
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
В TDictionary значения добавляются не по порядку. Да, можно что-то другое использовать или свой лисапет, но удобство TDictionary в том, что там без конвертации есть целочисленный тип (ключ) TDictionary<integer, string>, т.е. не надо использовать IntToStr. Может есть что-то похожее искаропки? За эти несколько лет в Delphi вроде надобавляли разных вкусностей. Может можно TDictionary заставить работать так, как я хочу? Задача простая. В цикле добавляю значения, а после цикла нужно добавить ещё 2-3, но так, чтобы эти 2-3 были в конце. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 08:49 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
я тут пример увидел https://stackoverflow.com/questions/14490275/tdictionary-populated-during-create-example-code что TList можно использовать похожим способом Код: pascal 1. 2. 3. Внимание, вопрос Знатокам :) в этом случае та же проблема будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 08:55 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11Может можно TDictionary заставить работать так, как я хочу? Тогда его плюсы (скоростные) будут нивелированы. X11в этом случае та же проблема будет? Не должна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 08:58 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
получается небольшое монстро, а не код Код: pascal 1. Переделал немножк Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 11:55 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
В общем, да, теперь все элементы по порядку. И после цикла добавляются несколько элементов именно в конец списка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 11:57 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11получается небольшое монстро, а не код Код: pascal 1. 2. 3. 4. 5. маленький хинт: не вычисляй поля на каждой итерации Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 12:17 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
да, точно, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 12:25 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
wadmanТогда его плюсы (скоростные) будут нивелированы. Не нашел тестов про TDictionary vs Tlist, а тут есть тест про TObjectList vs TObjectDictionary https://delphi-bar.blogspot.com/2017/09/tobjectlist-vs-tobjectdictionary.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 12:29 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11В TDictionary значения добавляются не по порядку. по определению не должон как вариант хранить данные в массиве, а в мапке индекс элемента в массиве ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 13:27 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11, TDictionary нужен для быстрого поиска значений по ключу. Порядок записей в нем не определен. Если тебе нужно просто хранить пары значений, то используй TList<record>. Если же тебе нужен таки TDictionary для доступа ключ-значение, но в какой-то момент вывести записи в каком-то порядке, то делай так Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 14:21 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_TDictionary нужен для быстрого поиска значений по ключу. я знаю, но мне поиск не нужен в данном конкретном случае, а только хранение и цикл for in ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 14:37 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Если же тебе нужен таки TDictionary для доступа ключ-значение, но в какой-то момент вывести записи в каком-то порядке, то делай так Сортировка по ключу или по значению не подходит. Нужно, чтобы те записи, которые добавлены в список последними, так и оставались последними. Я уже решил проблему, как я написал выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 14:38 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11я знаю, но мне поиск не нуженТогда и TDictionary тебе не нужен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 14:59 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Тогда и TDictionary тебе не нужен+1 X11, не порти сову с глобусом! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2019, 23:52 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11, не слушай их, натягивай и дальше! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 01:05 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
На всякий случай повторюсь: я проблему решил. X11В общем, да, теперь все элементы по порядку. И после цикла добавляются несколько элементов именно в конец списка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 08:35 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11, а удаляются - нормально? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 08:36 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11, поищи TLinkedDictionary, в сети реализаций полно у меня тоже где-то была на основе TDictionary, но найти не могу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 08:54 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
ёёёёё, ещё не удалял, а оно мне и не надо. Если надо, делаю clear и заново наполнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 09:09 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan)TLinkedDictionary это что-то искаропки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 09:09 |
|
||
|
TDictionary значения добавляются не по порядку
|
|||
|---|---|---|---|
|
#18+
X11kealon(Ruslan)TLinkedDictionary это что-то искаропки?он просто относится к классическим структурам (например, в Java это LinkedHashMap), но в RTL его почему-то не реализовали но энтузиастов много ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.05.2019, 10:09 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39812929&tid=2039477]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
392ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 228ms |
| total: | 698ms |

| 0 / 0 |
