Вступ до масиву в PowerShell

Масив - це тип структури даних, який може використовуватися для зберігання колекції елементів, колекція елементів може бути одного типу даних або різним. До елементів у масиві можна отримати доступ за допомогою індексу. Індекс масиву зазвичай починається з 0, тому для доступу до першого елемента потрібно використовувати індекс (0). Як правило, на масиві можуть бути лише дві операції, тобто додавання елемента до масиву або видалення елемента. У цій статті ми дізнаємось про масив у PowerShell.

Визначення масиву в PowerShell

Масив можна визначити будь-яким із наступних способів,

@ () - один із способів визначення масиву.

Приклад:

$Subject = @('History', 'Geo', 'Maths')

  • Масив також може бути створений як розділений комою список.

$test='testone', 'testtwo', 'testthree'

  • Масив може бути створений для конкретного елемента типу даних наступним чином,

(int()) $numbersarray = 1, 2, 3, 4, 5

Наведене вище є цілим масивом, і він може містити лише цілі значення.

Доступ до масиву

Давайте визначимо масив,

Приклад:

('test1', 'test2', 'test3', 'test4')

$ test (0) поверне тест1, $ тест (3) поверне тест4. Багато мов дозволяють задавати лише один індекс, тоді як в PowerShell можуть бути використані кілька індексів одночасно.

У наведеному вище тесті $ (1, 3) повернеться,

тест2

тест4

Операції на масиві

Додавання елементів до масиву. Давайте подивимось приклад того, як додати елемент до існуючого масиву.

Приклад:

('welcome', 'home')

Для додавання до вищевказаного масиву використовується оператор '+ ='.

$ test + = 'Raj'

Запуск $ test повернеться,

Ласкаво просимо

додому

Радж

Отримання масиву масиву

Тут ми пояснюємо, як використовувати наступний вхід для отримання підрахунку масиву.

Вхід:

('test1', 'ertr', 'fgdfgfd', 'dfgfdg', 'dfdfsd', 'dfgfdgdfg')

$ test.Count поверне 6, що є кількістю / довжиною масиву.

1. Сортування елементів у масиві

Оператор сортування може використовуватися для сортування елементів масиву, якщо елементи одного типу даних.

Вхід:

('oneee', 'zddsdsad', 'thraewawe')
$test |sort

Вищевказана команда буде сортувати елементи у порядку зростання

Вихід:

Вхід:

$test |sort -Descending will sort the elements in the descending order

Вихід:

2. Оновлення елемента в масиві

Індекс можна використовувати для оновлення елемента в масиві

Вхід:

('oneee', 'zddsdsad', 'thraewawe')
$test(0)='changed'

Наведена вище команда змінить "один" на "змінено". Виконання $ test повернеться

Вихід:

3. Пошук елемента в масиві

Для перевірки масиву на значення може використовуватися аналогічний оператор

Вхід:

('viki', ramu, 'aravind', 'vikram')
$test -like "*vik*"

Вихід:

Багатовимірний масив в PowerShell

Ми можемо створити багатовимірний масив наступним чином,

$testMultidimensionalArrays = @(1, 2, 3), @(4, 5, 6), @(7, 8, 9)

Кожен масив має один рядок та три стовпці.

Цикл масиву

Як і в будь-яких інших мовах, цикл for може використовуватися для циклу елементів у масиві.

Вхід:

('viki', 'ramu', 'aravind', 'vikram')
for($i=0;$i -lt $test.Length; $i++)
(
Write-Host $test($i) )

Вихід :

Для-кожного можна використовувати для виконання дії проти кожного елемента в масиві.

Вхід:

(1, 4, 5, 6, 7, 8, 9, 10)
foreach($i in $test)
(
$i=$i+5
Write-Host $i
)

Вихід:

Список масиву в PowerShell

Одним із недоліків Array є додавання до нього елементів, щоб подолати, що у нас є список масивів.

Далі йде синтаксис для створення списку масивів,

$myarray = (System.Collections.ArrayList)::new()
$myarray.Add(1)
$myarray.Add(2)
$myarray.Add(3)
$myarray

Перший рядок - це спосіб ініціалізації списку масивів, а наступні рядки - додавання елементів до ArrayList

Продуктивність списку масиву проти масиву

Наступні приклади показують різницю в продуктивності під час виконання операції зі списку масивів та масивів

Вхід:

Measure-Command -Expression ( 0..250 | ForEach-Object ( $arr += $_+1 ))
$arrlit = (System.Collections.ArrayList)@()
$f arrlit _performance = Measure-Command -Expression ( 0..250 | ForEach-Object ( $ arrlit += $_+1 ))
$ arrlit _performance

Перша команда виконує операцію над масивом, а третій рядок робить те саме у списку масивів.

Вихід:

  • Продуктивність масиву

  • Виконання списку масивів

Продуктивність списку масивів швидша та краща, ніж у масиві.

Приклад масиву в PowerShell

Далі наводиться приклад пошуку довжини масиву за допомогою циклу, циклу foreach та циклу while.

Вхід:

$testlist = 5.634, 4.512323, 3.312323, 13.2213213, 4.02324, 34.3334324, 34.04324, 45.4534324, 99.993234324, 11123234234 write-host("Printing the array elements")
$testlist
write-host("length of array")
$testlist.Length
write-host("fifth element in array")
$testlist(4) write-host("partial array")
$subList = $testlist(1..3) write-host("using for loop")
for ($i = 0; $i -le ($testlist.length - 1); $i += 1) (
$testlist($i) )
write-host("using forEach Loop")
foreach ($e in $testlist) (
$e
)
write-host("using while Loop")
$i = 0
while($i -lt 4) (
$testlist($i);
$i++
)
write-host("Assign values")
$testlist(1) = 10
$testlist

Вихід:

Таблиця хешу

Таблиця хеш використовується для реалізації структурованого масиву. У хеш-таблиці значення зберігаються у форматі ключ-значення. Вони також відомі як словник або асоціативний масив.

Синтаксис:

()

Або

( key1=”test1”;key2=”test2”;key3=”test3”)

Там, де key1, key2 та key3 є ключами, а test1, test2 та test3 - це значення.

Вхід :

$testhashtable

Вихід:

Ключ або значення можна отримати наступним чином за допомогою оператора .dot

Вхід:

$testhashtable.keys

Вихід:

Вхід:

$testhashtable.Values

Вихід:

Приклад

Далі наводиться приклад пошуку всіх ключів хешшю та значень хештелю.

Вхід:

$testht = @( English = "85"; Tamil = "100"; maths = "100")
write-host("Printing all the hashtable keys")
$testht.keys
write-host("Printing all the hashtable values")
$testht.values
write-host("print Size")
$testht.Count
write-host("Add key-value")
$testht("Social") = "100"
write-host("Add key-value")
$testht.Add("ss", "110")
write-host("Size")
$testht.Count
write-host("Remove English")
$testht.Remove("English")
write-host("curentSize")
$testht.Count
write-host("sortinh by key")
$testht.GetEnumerator() | Sort-Object -Property key

Вихід:

Висновок - масив в PowerShell

Основна перевага масиву - це управління пам'яттю. До них можна отримати доступ безпосередньо з кеша, що допомагає в швидшому пошуку. Вони підлягають багаторазовому використанню, як тільки це буде оголошено, їх можна повторно використовувати.

Рекомендовані статті

Це посібник з масиву в PowerShell. Тут ми обговорюємо введення та реалізацію масиву, списку масивів та хеш-таблиці в PowerShell. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. PowerShell vs CMD
  2. Топ-7 версій PowerShell
  3. Переваги масиву
  4. Ключова різниця між PowerShell та Bash

Категорія: