PS PowerShell  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Лёгкий  · 

Массивы и хеш-таблицы

Массивы и хеш-таблицы: практический тест по PowerShell с чтением кода, поиском причины ошибки и выбором надёжного решения. Темы: Массивы, Хеш-таблицы Hashtable, Упорядоченные словари Ordered, Добавление и фильтрация. Базовая линия — PowerShell 7.6.3; Windows-зависимые команды и отличия Windows PowerShell 5.1 отмечены в условиях.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. На 20 вопросов отведено 55 минут. В каждом вопросе верен только один вариант; близкие ответы различаются механизмом, порядком выполнения, областью действия или эксплуатационной границей. После завершения вы увидите общий результат, результаты по 4 тематическим шкалам и подробные объяснения.
Вопрос 1 из 20
Оператор запятая создаёт массив из одного элемента. Какой результат нужно ожидать?
PowerShellОператор запятая создаёт массив из одного элемента
$a = ,42
$b = @(42)
"$($a.Count):$($b.Count)"
Вопрос 2 из 20
Срез массива использует диапазон 3..1. Какой вывод был бы слишком сильным?
PowerShellСрез массива использует диапазон 3..1
$a="a","b","c","d"
$a[3..1] -join ""
Вопрос 3 из 20
Отрицательный индекс -1 применяется к непустому массиву. Какое объяснение не зависит от случайностей окружения?
PowerShellОтрицательный индекс -1 применяется к непустому массиву
$result = (10,20,30)[-1]
$items = @($result)
[pscustomobject]@{ Count=$items.Count; First=$items | Select-Object -First 1; IsNull=($null -eq $result) }
Вопрос 4 из 20
В большой коллекции часто выполняется +=. Как поступить, чтобы поведение осталось предсказуемым?
Вопрос 5 из 20
Команда может вернуть ноль, один или много объектов. Что точнее всего описывает поведение?
Вопрос 6 из 20
Хеш-таблица содержит ключ Name, доступный как свойство. Какой подход выдержит повторный запуск?
PowerShellХеш-таблица содержит ключ Name, доступный как свойство
$h=@{Name="alpha";Count=7}
$h["Count"]
$h.Name
Вопрос 7 из 20
Две хеш-таблицы объединяются оператором +. Как PowerShell обработает этот случай?
PowerShellДве хеш-таблицы объединяются оператором +
$result = @{a=1}+@{b=2}
$shape = if($null -eq $result){'<null>'}elseif($result -is [array]){'array'}else{$result.GetType().Name}
[pscustomobject]@{ Shape=$shape; Values=@($result) }
Вопрос 8 из 20
Ключи строковой Hashtable сравниваются в разном регистре. На каком правиле основан результат?
PowerShellКлючи строковой Hashtable сравниваются в разном регистре
$h=@{Name=1}
$h["name"]
Вопрос 9 из 20
Перебор $h.Keys совмещён с удалением ключей. Какой вывод был бы слишком сильным?
Вопрос 10 из 20
Как гарантировать тип ключей и значений?
Вопрос 11 из 20
Литерал [ordered]@{} перечисляется в порядке добавления ключей. Что фактически произойдёт при выполнении?
PowerShellЛитерал [ordered]@{} перечисляется в порядке добавления ключей
$h=[ordered]@{first=1;second=2;third=3}
$h.Keys -join ","
Вопрос 12 из 20
[ordered] применён не непосредственно к литералу хеш-таблицы. Как следует читать этот фрагмент?
PowerShell[ordered] применён не непосредственно к литералу хеш-таблицы
$h = @{ a=1; b=2 }
[ordered]$h
Вопрос 13 из 20
OrderedDictionary читается по числовому индексу. Какое скрытое допущение делает решение ненадёжным?
Вопрос 14 из 20
Порядок столбцов PSCustomObject строится из обычной Hashtable. Какой принцип PowerShell здесь работает?
Вопрос 15 из 20
Порядок нужен только для показа отчёта. Какое действие не создаст новой скрытой зависимости?
Вопрос 16 из 20
Фильтрация массива записана через Where-Object с доступом к свойству. Что здесь произойдёт до следующей команды?
PowerShellФильтрация массива записана через Where-Object с доступом к свойству
$items=[pscustomobject]@{N=1},[pscustomobject]@{N=2}
$filtered=$items | Where-Object N -gt 1
$filtered.N=9
$items.N -join ","
Вопрос 17 из 20
В List[int] добавляется строка "3". Какое утверждение верно для этого случая?
PowerShellВ List[int] добавляется строка "3"
$l=[Collections.Generic.List[int]]::new()
$l.Add("3")
$l[0].GetType().Name
Вопрос 18 из 20
Хеш-таблица фильтруется через GetEnumerator. Какой вариант точнее выражает контракт?
Вопрос 19 из 20
Как удалить элементы массива по условию?
Вопрос 20 из 20
Фильтр должен остановиться после первого совпадения. Где заканчивается гарантия этого механизма?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу