Π’ ΠΌΠΈΡ€Π΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ «список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉΒ» встрСчаСтся Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ часто, Ρ‡Ρ‚ΠΎ Π±Π΅Π· Π΅Π³ΠΎ понимания слоТно Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π΄Π°ΠΆΠ΅ Π² Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ Π½Π΅ просто коллСкция Π΄Π°Π½Π½Ρ‹Ρ… β€” это ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΈ Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…, ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅, ΠΈ ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Но Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ скрываСтся Π·Π° этим понятиСм? ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ 1Π‘ Ρ‚Π°ΠΊ часто ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ БписокЗначСний, Π° Π½Π΅ ΠΊ массивам ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

Если Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ 1Π‘ 8.3 ΠΈΠ»ΠΈ ΡƒΠΆΠ΅ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ динамичСски Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ β€” эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΈΡΡ‚Π΅ΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ знания. ΠœΡ‹ Π½Π΅ просто Π΄Π°Π΄ΠΈΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, Π½ΠΎ ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ практичСскиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования, Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ раскроСм Π½ΡŽΠ°Π½ΡΡ‹, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… часто ΡƒΠΌΠ°Π»Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π² стандартной Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. НапримСр, Π·Π½Π°Π»ΠΈ Π»ΠΈ Π²Ρ‹, Ρ‡Ρ‚ΠΎ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ (строки, числа), Π½ΠΎ ΠΈ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…? Или Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹ Π±Π΅Π· Π΅Π΄ΠΈΠ½ΠΎΠΉ строки ΠΊΠΎΠ΄Π°?

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хотят Π³Π»ΡƒΠ±ΠΆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ интСрфСйсныС элСмСнты Π² 1Π‘, ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ, ΠΈΡ‰ΡƒΡ‰ΠΈΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для хранСния ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ коснёмся вопросов ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ β€” ΠΊΠΎΠ³Π΄Π° Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ БписокЗначСний, Π° ΠΊΠΎΠ³Π΄Π° стоит ΠΎΡ‚Π΄Π°Ρ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Массив.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘: ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ структура

Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ β€” это коллСкция ΠΏΠ°Ρ€ Β«Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅-прСдставлСниС», Π³Π΄Π΅:

  • πŸ“Œ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” собствСнно Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хранятся Π² элСмСнтС списка (ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ: строка, число, Π΄Π°Ρ‚Π°, ссылка Π½Π° справочник, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Ρ‚.Π΄.).
  • 🏷️ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ β€” тСкстовая строка, которая отобраТаСтся ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π² интСрфСйсС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС).
  • πŸ”— ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ° β€” Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π»Π°Π³, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠΎΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ элСмСнты (Π°Π½Π°Π»ΠΎΠ³ Β«Π³Π°Π»ΠΎΡ‡ΠΊΠΈΒ» Π² чСкбоксах).
  • 🎨 ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° β€” ΠΈΠΊΠΎΠ½ΠΊΠ°, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°Ρ‚ΡŒ элСмСнт (Ρ€Π΅ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π½ΠΎ поддСрТиваСтся ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ).

Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ БписокЗначСний Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ для добавлСния, удалСния, сортировки ΠΈ поиска элСмСнтов. Π•Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Массива β€” Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π΄Π²ΡƒΡ… слоёв Π΄Π°Π½Π½Ρ‹Ρ…: Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ (прСдставлСниС), ΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅). НапримСр, Π² спискС стран ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚ «Россия», Β«ΠšΠ°Π·Π°Ρ…ΡΡ‚Π°Π½Β», «БСлоруссия», Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠ΄Π°ΠΌΠΈ "RU", "KZ", "BY".

Бписки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π²:

  • πŸ“‹ Π€ΠΎΡ€ΠΌΠ°Ρ… β€” для Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… списков (ΠŸΠΎΠ»Π΅Π’Ρ‹Π±ΠΎΡ€Π°, ΠŸΠΎΠ»Π΅Π’Π²ΠΎΠ΄Π°Π‘ΠΏΠΈΡΠΊΠ°).
  • πŸ“Š ΠžΡ‚Ρ‡Ρ‘Ρ‚Π°Ρ… β€” ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с фиксированным Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ².
  • βš™οΈ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ… β€” для динамичСского формирования мСню дСйствий.
  • πŸ”„ ΠžΠ±ΠΌΠ΅Π½Π°Ρ… Π΄Π°Π½Π½Ρ‹ΠΌΠΈ β€” ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ хранСния сопоставлСний.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: НС ΠΏΡƒΡ‚Π°ΠΉΡ‚Π΅ БписокЗначСний с Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ! ПослСдняя ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ (строки + ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ), Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ΠΌ β€” элСмСнтами.

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: способы ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘ ΠΌΠΎΠΆΠ½ΠΎ нСсколькими способами β€” ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ, Ρ‚Π°ΠΊ ΠΈ Ρ‡Π΅Ρ€Π΅Π· конструкторы Ρ„ΠΎΡ€ΠΌ. Рассмотрим основныС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹.

1. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ созданиС Π² ΠΊΠΎΠ΄Π΅

Π‘Π°ΠΌΡ‹ΠΉ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ β€” инициализация Ρ‡Π΅Ρ€Π΅Π· встроСнный язык. НапримСр, Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ список с ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΈ названиями Π²Π°Π»ΡŽΡ‚:

Π‘ΠΏΠΈΡΠΎΠΊΠ’Π°Π»ΡŽΡ‚ = Новый БписокЗначСний;

Π‘ΠΏΠΈΡΠΎΠΊΠ’Π°Π»ΡŽΡ‚.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("RUB", "Π ΡƒΠ±Π»ΡŒ");

Π‘ΠΏΠΈΡΠΎΠΊΠ’Π°Π»ΡŽΡ‚.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("USD", "Π”ΠΎΠ»Π»Π°Ρ€ БША");

Π‘ΠΏΠΈΡΠΎΠΊΠ’Π°Π»ΡŽΡ‚.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("EUR", "Π•Π²Ρ€ΠΎ");

ΠœΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°: Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚) ΠΈ прСдставлСниС (Π²Ρ‚ΠΎΡ€ΠΎΠΉ). Если прСдставлСниС Π½Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ сгСнСрировано автоматичСски ΠΈΠ· значСния.

2. Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ· массива ΠΈΠ»ΠΈ запроса

Часто Π΄Π°Π½Π½Ρ‹Π΅ для списка бСрутся ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… источников. НапримСр, Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ список названиями справочников ΠΈΠ· ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…:

БписокБправочников = Новый БписокЗначСний;

Для КаТдого Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ Из ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅.Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ Π¦ΠΈΠΊΠ»

БписокБправочников.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.Имя, Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.Π‘ΠΈΠ½ΠΎΠ½ΠΈΠΌ);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Или ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° запроса:

Запрос = Новый Запрос;

Запрос.ВСкст = "ВЫБРАВЬ Π ΠΠ—Π›Π˜Π§ΠΠ«Π• Π“ΠΎΡ€ΠΎΠ΄ Π˜Π— Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹";

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Запрос.Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ();

БписокГородов = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ().Π’Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ("Π“ΠΎΡ€ΠΎΠ΄");

3. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ созданиС Π² конструкторС Ρ„ΠΎΡ€ΠΌΡ‹

Если список статичСский (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΎΠΏΠ»Π°Ρ‚Ρ‹: «НаличныС», Β«Π‘Π΅Π·Π½Π°Π»ΠΈΡ‡Π½Ρ‹ΠΉ расчёт», Β«ΠšΠ°Ρ€Ρ‚Π°Β»), Π΅Π³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ прямо Π² конструкторС Ρ„ΠΎΡ€ΠΌΡ‹:

  1. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ элСмСнт ΠŸΠΎΠ»Π΅Π’Ρ‹Π±ΠΎΡ€Π°.
  2. Π’ свойствах элСмСнта Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ БписокВыбора.
  3. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«...Β» ΠΈ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½ΡƒΠΆΠ½Ρ‹Π΅ элСмСнты.

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ написания ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для фиксированных Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ….

πŸ“Š Как Π²Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ создаётС списки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘?
Π§Π΅Ρ€Π΅Π· ΠΊΠΎΠ΄ Π½Π° встроСнном языкС
Π’ конструкторС Ρ„ΠΎΡ€ΠΌΡ‹
Π˜ΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽ ΠΈΠ· XML/JSON
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списком Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, поиск

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ БписокЗначСний прСдоставляСт Π±ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для манипуляции Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Рассмотрим самыС вострСбованныС.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€
Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ДобавляСт Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ† списка Бписок.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(10, "Π”Π΅ΡΡΡ‚ΡŒ")
Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ() ВставляСт элСмСнт ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ индСксу Бписок.Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ(1, 5, "ΠŸΡΡ‚ΡŒ")
Π£Π΄Π°Π»ΠΈΡ‚ΡŒ() УдаляСт элСмСнт ΠΏΠΎ индСксу ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Бписок.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(0)
ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽ() Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ элСмСнт ΠΏΠΎ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ = Бписок.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽ("USD")
Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠŸΠΎΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ() Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ элСмСнты ΠΏΠΎ тСкстовому ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ Бписок.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠŸΠΎΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ()

Π Π°Π±ΠΎΡ‚Π° с ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠ°ΠΌΠΈ

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ списка ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ Ρ„Π»Π°ΠΆΠΊΠ°ΠΌΠΈ (Π°Π½Π°Π»ΠΎΠ³ чСкбоксов). Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ мноТСствСнного Π²Ρ‹Π±ΠΎΡ€Π°:

// ΠŸΠΎΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ элСмСнт с индСксом 1

Бписок.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠŸΠΎΠΌΠ΅Ρ‚ΠΊΡƒ(1, Π˜ΡΡ‚ΠΈΠ½Π°);

// ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΡƒ

Если Бписок.ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°(1) Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½!");

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Поиск ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ

Для поиска элСмСнтов ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽ() ΠΈ ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ(). НапримСр, Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ элСмСнт ΠΏΠΎ частичному совпадСнию:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠŸΠΎΠΈΡΠΊΠ° = Бписок.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ("Π”ΠΎΠ»Π»*", Π›ΠΎΠΆΡŒ); // Π›ΠΎΠΆΡŒ - Π½Π΅ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ поиск
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽ() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ НСопрСдСлСно, Ссли элСмСнт Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½. ВсСгда провСряйтС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° НСопрСдСлСно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок!

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ со списком Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ практичСского примСнСния списков Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

ВСория Π±Π΅Π· ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ бСсполСзна. Рассмотрим Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ сцСнарии, Π³Π΄Π΅ списки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡ‹.

1. ДинамичСскоС Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка Π² Ρ„ΠΎΡ€ΠΌΠ΅

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Β«Π—Π°ΠΊΠ°Π· покупатСля», ΠΈ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΌΠΎΠ³ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ способ доставки ΠΈΠ· списка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ формируСтся динамичСски (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² зависимости ΠΎΡ‚ Π³ΠΎΡ€ΠΎΠ΄Π° покупатСля).

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅(ΠžΡ‚ΠΊΠ°Π·, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°)

БписокДоставки = Новый БписокЗначСний;

Если Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π“ΠΎΡ€ΠΎΠ΄ = "Москва" Π’ΠΎΠ³Π΄Π°

БписокДоставки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("CDEK", "Π‘Π”Π­Πš (доставка Π·Π° 1 дСнь)");

БписокДоставки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("COURIER", "ΠšΡƒΡ€ΡŒΠ΅Ρ€ (300 Ρ€ΡƒΠ±.)");

Π˜Π½Π°Ρ‡Π΅

БписокДоставки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("POST", "ΠŸΠΎΡ‡Ρ‚Π° России (5-7 Π΄Π½Π΅ΠΉ)");

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.БпособДоставки.БписокВыбора = БписокДоставки;

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

2. Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π΅

Π’ ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π΅ Β«ΠŸΡ€ΠΎΠ΄Π°ΠΆΠΈ ΠΏΠΎ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Π΅Β» ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Β«Π’ΠΈΠΏ Ρ‚ΠΎΠ²Π°Ρ€Π°Β» со списком Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΌ ΠΈΠ· справочника:

БписокВипов = Новый БписокЗначСний;

Запрос = Новый Запрос("ВЫБРАВЬ Π ΠΠ—Π›Π˜Π§ΠΠ«Π• Π’ΠΈΠΏ Π˜Π— Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура");

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = Запрос.Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ();

Π’Ρ‹Π±ΠΎΡ€ΠΊΠ° = Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ();

Пока Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ() Π¦ΠΈΠΊΠ»

БписокВипов.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π’ΠΈΠΏ, Π’Ρ‹Π±ΠΎΡ€ΠΊΠ°.Π’ΠΈΠΏ.НаимСнованиС);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

3. ОбмСн Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ систСмами

ΠŸΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ 1Π‘ с внСшними сСрвисами списки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ для хранСния сопоставлСний ΠΊΠΎΠ΄ΠΎΠ². НапримСр, Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ соотвСтствиС статусов Π·Π°ΠΊΠ°Π·ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ 1Π‘ ΠΈ Bitrix24:

БопоставлСниСБтатусов = Новый БписокЗначСний;

БопоставлСниСБтатусов.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("NEW", "Новый"); // Bitrix β†’ 1Π‘

БопоставлСниСБтатусов.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("PAID", "ΠžΠΏΠ»Π°Ρ‡Π΅Π½");

БопоставлСниСБтатусов.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("SHIPPED", "ΠžΡ‚Π³Ρ€ΡƒΠΆΠ΅Π½");

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром?

Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ списка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π’Π‘Ρ‚Ρ€ΠΎΠΊΡƒΠ’Π½ΡƒΡ‚Ρ€() Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€() Π½Π° сСрвСрС. НапримСр:

// На ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅

БтрокаБписка = Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π’Π‘Ρ‚Ρ€ΠΎΠΊΡƒΠ’Π½ΡƒΡ‚Ρ€(БписокЗначСний);

// На сСрвСрС

БписокЗначСний = Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€(БтрокаБписка);

Π­Ρ‚ΠΎ позволяСт ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ограничСния Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ контСкстами.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со списками Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ камнями ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со списками Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ΠΎΡ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространённыС ошибки ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ.

1. ΠŸΡƒΡ‚Π°Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈ прСдставлСниСм

Частая ошибка β€” ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСдставлСниС вмСсто значСния. НапримСр:

// ❌ НСвСрно: сравнСниС ΠΏΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ

Если Бписок.ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅(ИндСкс) = "Π”ΠΎΠ»Π»Π°Ρ€ БША" Π’ΠΎΠ³Π΄Π°

// Π›ΠΎΠ³ΠΈΠΊΠ°

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

// βœ… ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ: сравнСниС ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ

Если Бписок.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅(ИндСкс) = "USD" Π’ΠΎΠ³Π΄Π°

// Π›ΠΎΠ³ΠΈΠΊΠ°

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

2. IgnoreCase ΠΏΡ€ΠΈ поискС

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ поиск ΠΏΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ чувствитСлСн ΠΊ рСгистру. Если Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ рСгистр, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΠ΅Π§ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠšΠ Π΅Π³ΠΈΡΡ‚Ρ€Ρƒ:

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ = Бписок.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ("Π΄ΠΎΠ»Π»Π°Ρ€", Π˜ΡΡ‚ΠΈΠ½Π°); // Π˜ΡΡ‚ΠΈΠ½Π° - Π½Π΅Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ рСгистру

3. ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ списка Π²ΠΎ врСмя ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ

Если Π²Ρ‹ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ элСмСнты списка Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΠΈΡ… ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ, это ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ ошибкС. РСшСниС β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΈΠ»ΠΈ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ индСксы для удалСния Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ массив:

// ❌ Ошибка: модификация Π²ΠΎ врСмя прямого ΠΎΠ±Ρ…ΠΎΠ΄Π°

Для Инд = 0 По Бписок.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1 Π¦ΠΈΠΊΠ»

Если Бписок.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅(Инд) = "USD" Π’ΠΎΠ³Π΄Π°

Бписок.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Инд); // Ошибка!

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

// βœ… ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ: ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ»

Для Инд = Бписок.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1 По 0 Π¨Π°Π³ -1 Π¦ΠΈΠΊΠ»

Если Бписок.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅(Инд) = "USD" Π’ΠΎΠ³Π΄Π°

Бписок.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Инд);

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими списками (1000+ элСмСнтов) ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ вставки/удалСния Π² сСрСдинС ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ рСсурсоёмкими. Для Ρ‚Π°ΠΊΠΈΡ… случаСв рассмотритС использованиС Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Массив.

Бписок Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ vs. Π’Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ vs. Массив: Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ?

Π’ 1Π‘ Π΅ΡΡ‚ΡŒ нСсколько структур Π΄Π°Π½Π½Ρ‹Ρ… для хранСния ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ. Как ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ БписокЗначСний, Π° ΠΊΠΎΠ³Π΄Π° β€” Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹?

ΠšΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ БписокЗначСний Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Массив
НаличиС прСдставлСний βœ… Π”Π° (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ + прСдставлСниС) ❌ НСт (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Π½Π½Ρ‹Π΅) ❌ НСт
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠΎΠΌΠ΅Ρ‚ΠΎΠΊ βœ… Π”Π° ❌ НСт ❌ НСт
ΠœΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ❌ ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ βœ… Π”Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ (строки + ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ) ❌ ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ
ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 🟑 БрСдняя (Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ прСдставлСний) 🟒 Высокая (ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π° для Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…) 🟒 Высокая (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы)
ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ², сопоставлСния Π’Π°Π±Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, экспорт/ΠΈΠΌΠΏΠΎΡ€Ρ‚, слоТныС ΠΎΡ‚Ρ‡Ρ‘Ρ‚Ρ‹ ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ БписокЗначСний, Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ прСдставлСния для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΠ»ΠΈ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ. Π’ΠΎ всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях рассмотритС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹.

НапримСр, для хранСния списка ID Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚ Массив, Π° для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ β€” Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

πŸ’‘

Бписок Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ΄Π΅Π°Π»Π΅Π½ для интСрфСйсных элСмСнтов (Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки, чСкбоксы), Π³Π΄Π΅ Π²Π°ΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²ΠΈΠ΄ΠΈΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. Для чисто ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… манипуляций с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ часто эффСктивнСС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Массив ΠΈΠ»ΠΈ Π’Π°Π±Π»ΠΈΡ†ΡƒΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ возмоТности: XML, JSON ΠΈ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

Бписки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² XML ΠΈΠ»ΠΈ JSON, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с внСшними систСмами ΠΈΠ»ΠΈ сохранСнии настроСк.

1. БСриализация Π² XML

Для сохранСния списка Π² XML ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π—Π°ΠΏΠΈΡΡŒXML:

Π—Π°ΠΏΠΈΡΡŒ = Новый Π—Π°ΠΏΠΈΡΡŒXML;

Π—Π°ΠΏΠΈΡΡŒ.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΠ€Π°ΠΉΠ»("C:\temp\список.xml");

Бписок.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒXML(Π—Π°ΠΏΠΈΡΡŒ);

Π—Π°ΠΏΠΈΡΡŒ.Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ();

2. ДСсСриализация ΠΈΠ· XML

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ список ΠΈΠ· XML:

Π§Ρ‚Π΅Π½ΠΈΠ΅ = Новый Π§Ρ‚Π΅Π½ΠΈΠ΅XML;

Π§Ρ‚Π΅Π½ΠΈΠ΅.ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΠ€Π°ΠΉΠ»("C:\temp\список.xml");

Бписок = Новый БписокЗначСний;

Бписок.ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒXML(Π§Ρ‚Π΅Π½ΠΈΠ΅);

Π§Ρ‚Π΅Π½ΠΈΠ΅.Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ();

3. Π Π°Π±ΠΎΡ‚Π° с JSON

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с JSON потрСбуСтся ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ список Π² массив ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:

ΠœΠ°ΡΡΠΈΠ²Π”Π»ΡJSON = Новый Массив;

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из Бписок Π¦ΠΈΠΊΠ»

ΠœΠ°ΡΡΠΈΠ²Π”Π»ΡJSON.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅", Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅));

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

JSON = Новый Π‘Π΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€JSON;

ВСкстJSON = JSON.Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ(ΠœΠ°ΡΡΠΈΠ²Π”Π»ΡJSON);

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π€ΠΎΡ€ΠΌΠ°Ρ‚ XML, сохраняСмый ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒXML(), зависит ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. ΠŸΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ вСрсиями 1Π‘ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ совмСстимости. ВсСгда тСстируйтС ΠΎΠ±ΠΌΠ΅Π½ Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…!
πŸ’‘

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π²Π΅Π±-сСрвис ΠΈΠ»ΠΈ мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ Π΅Π³ΠΎ Π² JSON Ρ‡Π΅Ρ€Π΅Π· Массив ΠΈΠ»ΠΈ Π’Π°Π±Π»ΠΈΡ†ΡƒΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ обСспСчит ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ Π²Π½Π΅ΡˆΠ½ΠΈΡ… систСм.

FAQ: ЧастыС вопросы ΠΎ списках Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² 1Π‘

МоТно Π»ΠΈ Π² спискС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ссылки Π½Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹)?

Π”Π°, Π² качСствС значСния ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… (справочники, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΏΠ»Π°Π½Ρ‹ Π²ΠΈΠ΄ΠΎΠ² характСристик ΠΈ Ρ‚.Π΄.). НапримСр:

БписокДоков = Новый БписокЗначСний;

БписокДоков.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹.Π—Π°ΠΊΠ°Π·ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Ρ.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠΎΠΌΠ΅Ρ€Ρƒ("0001"), "Π—Π°ΠΊΠ°Π· β„–0001 ΠΎΡ‚ 10.05.2026");

Однако ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ сСриализации (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² XML) Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ сохранСны ΠΊΠ°ΠΊ ссылки, ΠΈ ΠΈΡ… ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ восстановлСниС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Как ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, Π° Π½Π΅ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ?

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ() сортируСт ΠΏΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΡŽ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ:

Бписок.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽΠΠ°ΡΠ΅Ρ€Π²Π΅Ρ€Π΅();

Или Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ массив:

Массив = Новый Массив;

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из Бписок Π¦ΠΈΠΊΠ»

Массив.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Массив.Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠŸΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΡŽ();

Бписок.ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ();

Для КаТдого Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из Массив Π¦ΠΈΠΊΠ»

Бписок.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Как ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΊ полю Ρ„ΠΎΡ€ΠΌΡ‹ динамичСски?

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ список Π²Ρ‹Π±ΠΎΡ€Π° Π² ΠΏΠΎΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ поля), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄:

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π“ΠΎΡ€ΠΎΠ΄ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)

БписокМагазинов = ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ‘ΠΏΠΈΡΠΎΠΊΠœΠ°Π³Π°Π·ΠΈΠ½ΠΎΠ²ΠŸΠΎΠ“ΠΎΡ€ΠΎΠ΄Ρƒ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Π“ΠΎΡ€ΠΎΠ΄.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Магазин.БписокВыбора = БписокМагазинов;

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

Π“Π΄Π΅ ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ‘ΠΏΠΈΡΠΎΠΊΠœΠ°Π³Π°Π·ΠΈΠ½ΠΎΠ²ΠŸΠΎΠ“ΠΎΡ€ΠΎΠ΄Ρƒ() β€” ваша функция, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π°Ρ БписокЗначСний.

МоТно Π»ΠΈ Π² спискС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅?

НСт, Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ β€” нСльзя. Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅:

  1. Π₯Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΈΠ»ΠΈ Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ Π² Π±Π°Π·Π΅.
  2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСдставлСниС для отобраТСния тСкстового описания.
  3. ΠŸΡ€ΠΈ нСобходимости Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ динамичСски ΠΏΠΎ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ элСмСнта).

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π₯ранилищСЗначСния ΠΈΠ»ΠΈ Π”Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅Π”Π°Π½Π½Ρ‹Π΅.

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ Π»ΠΈ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ элСмСнт Π² спискС?

Для этого Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ всС элСмСнты. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠŸΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ…():

Если Бписок.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠŸΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ…() > 0 Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π•ΡΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ элСмСнты!");

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;