Phương thức mảng
Thuộc phần Kiến thức nền tảng trong hành trình C# của Coddy. Bài học 58 trên 69.
Mảng có nhiều phương thức (method). Để gọi một phương thức, hãy viết:
Array.MethodName(arrayName, otherParameters)Các phương thức mảng phổ biến:
Clear(array, index, length) - xóa các phần tử của mảng, đặt một dãy phần tử thành 0, false hoặc null:
int[] numbers = {1, 2, 3, 4, 5};
Array.Clear(numbers, 1, 3);
// numbers sẽ là {1, 0, 0, 0, 5}Reverse(array) - đảo ngược thứ tự các phần tử trong mảng (array):
int[] numbers = {1, 2, 3, 4, 5};
Array.Reverse(numbers);
// numbers sẽ là {5, 4, 3, 2, 1}Sort(array) - sắp xếp các phần tử trong mảng theo thứ tự tăng dần:
int[] numbers = {5, 2, 9, 1, 5, 6};
Array.Sort(numbers);
// numbers sẽ là {1, 2, 5, 5, 6, 9}Copy(sourceArray, sourceIndex, destinationArray, destinationIndex, length) - sao chép một dải phần tử từ mảng này sang mảng khác:
int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[5];
Array.Copy(source, 0, destination, 0, 5);
// destination sẽ là {1, 2, 3, 4, 5}Ví dụ với các vị trí khác nhau:
int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[7];
Array.Copy(source, 1, destination, 2, 3);
// destination sẽ là {0, 0, 2, 3, 4, 0, 0}
// Sao chép các phần tử (elements) 2, 3, 4 từ source, bắt đầu tại chỉ số (index) 1
// Đặt chúng vào destination, bắt đầu tại chỉ số 2Thử thách
DễTạo một phương thức tên là Merge nhận hai mảng làm đối số. Phương thức này gộp hai mảng thành một mảng đã sắp xếp rồi trả về mảng đó.
Ví dụ, các đối số sau: Merge(new string[] {"1", "4", "2"}, new string[] {"2", "5", "9"}) sẽ trả về ["1", "2", "2", "4", "5", "9"]
Dùng Array.Copy() để sao chép các phần tử từ mảng này sang mảng khác. Cú pháp là:
Array.Copy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)Ví dụ:
// Source array
string[] sourceArray = {"1", "2", "3", "4", "5"};
// Destination array
string[] destinationArray = new string[5];
// Copy elements from sourceArray to destinationArray
Array.Copy(sourceArray, 0, destinationArray, 0, 5);Mảng đích sau khi sao chép: 1 2 3 4 5
Tự làm thử
using System;
public class Program {
public static string[] Merge(string[] arr1, string[] arr2) {
string[] result = new string[arr1.Length + arr2.Length];
// Sao chép arr1 và arr2 vào result, rồi sắp xếp result
return result;
}
public static void Main(string[] args) {
string textArr1 = Console.ReadLine();
string textArr2 = Console.ReadLine();
string[] arr1 = textArr1.Split(",");
string[] arr2 = textArr2.Split(",");
string[] mergedArray = Merge(arr1, arr2);
Console.WriteLine(string.Join(", ", mergedArray));
}
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức nền tảng
4Các toán tử, phần 1
Toán tử số họcToán tử moduloTăng và giảmTăng và giảm hậu tốToán tử số học rút gọn5Toán tử phần 2
Toán tử so sánhToán tử logic phần 1Toán tử logic phần 2Ôn tập: logic đơn giảnToán tử logic phần 311Mảng cơ bản
Khai báo mảngTruy cập phần tửThay đổi mảngPhương thức mảngÔn tập: mảng tíchChỉnh sửa, ôn tập: mảng đảo ngượcTự luyện tập: Trình biên dịch C# online