Matrice în Windows PowerShell Partea 2 Povestea web

Să continuăm să vorbim despre matrice în Windows PowerShell. În partea anterioară, am vorbit despre accesarea elementelor matricei. Astăzi vom vorbi despre operațiunile cu matrice.

Operații cu matrice

În mod implicit, toate tablourile din PowerShell sunt polimorfe, adică. poate conține elemente de diferite tipuri.

Să creăm un tablou $a , format, de exemplu, din trei elemente 1 , 2 și 3 . Și verificați tipul acestuia în practică.

Deci, după cum putem vedea, pentru a vedea tipul de matrice $a, trebuie să tastam

și vom vedea că este o matrice de tip System.Object[] . Astfel de matrice pot conține obiecte de toate tipurile.

Putem crea o matrice cu elemente hardcoded de același tip. Pentru a face acest lucru, atunci când creați o matrice, înaintea numelui acesteia, trebuie să scrieți între paranteze drepte tipul de variabile de care avem nevoie.

Dacă încercăm să suprascriem valoarea unui element dintr-o astfel de matrice cu ceva nepotrivit, vom vedea următorul mesaj de eroare:

Acum să vorbim despre cum puteți modifica matricele existente.

De exemplu, matricea noastră $a are trei elemente, dacă încercăm să accesăm un element care depășește matricea, PowerShell ne va ignora pur și simplu. Dar dacă încercăm să schimbăm valoarea unui element inexistent, vom fi întâmpinați cu un mesaj de eroare.

Dacă trebuie să creștem lungimea unui tablou, putem folosi operatorii + sau +=.

De fapt, în acest caz, nu am adăugat elemente la matricea existentă, ci am creat una nouă, în care a fost copiat conținutul vechii matrice și au fost adăugate elemente noi.

Prin aceeași logică, nu putem elimina elemente dintr-o matrice deja existentă, dar putem crea o matrice nouă și putem copia toate elementele de acolo, cu excepția celor inutile.

Îmbinarea matricelor este destul de ușoară.

Pentru a elimina o matrice, utilizați cmdletul Remove-Item (alias del ) și eliminați matricea de pe discul virtual variabil. Mai jos este un exemplu de ștergere a matricei $a .

Și ultimul lucru pe care trebuie să-l știi despre matrice. Dacă folosim doar operatorul de atribuire ( = ), atunci noua matrice va fi un fel de referință la cea anterioară. De exemplu, $b=$a creează o matrice $b care se referă la $a . Dacă modificăm valorile elementelor matricei $a , atunci acestea se vor schimba și în $b . Această regulă nu se aplică tablourilor obținute din unirea altora.