Powershell - Mảng
PowerShell cung cấp một cấu trúc dữ liệu, array, lưu trữ một tập hợp tuần tự có kích thước cố định của các phần tử thuộc bất kỳ loại nào. Mảng được sử dụng để lưu trữ một tập hợp dữ liệu, nhưng sẽ hữu ích hơn nếu coi mảng như một tập hợp các biến hoặc đối tượng.
Thay vì khai báo các biến riêng lẻ, chẳng hạn như number0, number1, ... và number99, bạn khai báo một biến mảng chẳng hạn như số và sử dụng số [0], số [1] và ..., số [99] để biểu diễn các biến riêng lẻ.
Hướng dẫn này giới thiệu cách khai báo biến mảng, tạo mảng và xử lý mảng bằng cách sử dụng các biến được lập chỉ mục.
Khai báo biến mảng
Để sử dụng mảng trong một chương trình, bạn phải khai báo một biến để tham chiếu đến mảng và bạn có thể chỉ định kiểu mảng mà biến có thể tham chiếu. Đây là cú pháp để khai báo một biến mảng:
Cú pháp
$A = 1, 2, 3, 4
or
$A = 1..4
Note- Mặc định kiểu đối tượng của mảng là System.Object. Phương thức GetType () trả về kiểu của mảng. Loại có thể được thông qua.
Thí dụ
Các đoạn mã sau là ví dụ về cú pháp này:
[int32[]]$intA = 1500,2230,3350,4000
$A = 1, 2, 3, 4
$A.getType()
Điều này sẽ tạo ra kết quả sau:
Đầu ra
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
Các phần tử mảng được truy cập thông qua index. Chỉ số mảng dựa trên 0; nghĩa là, chúng bắt đầu từ 0 đếnarrayRefVar.length-1.
Thí dụ
Câu lệnh sau khai báo một biến mảng, myList, tạo một mảng gồm 10 phần tử kiểu kép và gán tham chiếu của nó cho myList:
$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123
Hình sau đại diện cho mảng myList. Ở đây, myList chứa mười giá trị kép và các chỉ số từ 0 đến 9.
Mảng xử lý
Khi xử lý các phần tử mảng, chúng ta thường sử dụng for vòng lặp hoặc foreach vòng lặp vì tất cả các phần tử trong một mảng có cùng kiểu và kích thước của mảng đã biết.
Thí dụ
Đây là một ví dụ hoàn chỉnh cho thấy cách tạo, khởi tạo và xử lý mảng -
$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123
write-host("Print all the array elements")
$myList
write-host("Get the length of array")
$myList.Length
write-host("Get Second element of array")
$myList[1]
write-host("Get partial array")
$subList = $myList[1..3]
write-host("print subList")
$subList
write-host("using for loop")
for ($i = 0; $i -le ($myList.length - 1); $i += 1) {
$myList[$i]
}
write-host("using forEach Loop")
foreach ($element in $myList) {
$element
}
write-host("using while Loop")
$i = 0
while($i -lt 4) {
$myList[$i];
$i++
}
write-host("Assign values")
$myList[1] = 10
$myList
Điều này sẽ tạo ra kết quả sau:
Đầu ra
Print all the array elements
5.6
4.5
3.3
13.2
4
34.33
34
45.45
99.993
11123
Get the length of array
10
Get Second element of array
4.5
Get partial array
print subList
4.5
3.3
13.2
using for loop
5.6
4.5
3.3
13.2
4
34.33
34
45.45
99.993
11123
using forEach Loop
5.6
4.5
3.3
13.2
4
34.33
34
45.45
99.993
11123
using while Loop
5.6
4.5
3.3
13.2
Assign values
5.6
10
3.3
13.2
4
34.33
34
45.45
99.993
11123
Ví dụ về phương thức mảng
Đây là một ví dụ hoàn chỉnh cho thấy các hoạt động trên mảng bằng cách sử dụng các phương thức của nó
$myList = @(0..4)
write-host("Print array")
$myList
$myList = @(0..4)
write-host("Assign values")
$myList[1] = 10
$myList
Điều này sẽ tạo ra kết quả sau:
Đầu ra
Clear array
Print array
0
1
2
3
4
Assign values
0
10
2
3
4