[C#] Hướng dẫn sử dụng Tuple trong lập trình csharp
Bài viết hôm nay, mình sẽ tiếp tục giới thiệu đến các bạn các sử dụng Tuple trong lập trình C#. Tuple không phải là một thành phần mới trong C#, Tuple được giới thiệu từ .NET Framwork 4.0. Thường khi viết ứng dụng, phương thức của chúng ta thường ...
Bài viết hôm nay, mình sẽ tiếp tục giới thiệu đến các bạn các sử dụng Tuple trong lập trình C#. Tuple không phải là một thành phần mới trong C#, Tuple được giới thiệu từ .NET Framwork 4.0.
Thường khi viết ứng dụng, phương thức của chúng ta thường trả về một giá trị, nếu muốn trả về nhiều giá trị chúng ta phải tạo một class object đối tượng.
Tuy nhiên, trong từng trường hợp chúng ta chỉ sử dụng đối tượng 1 lần thì Tuple sẽ giúp chúng ta giải quyết cho vấn đề này một cách đơn giản.
Mục đích sử dụng Tuple là tạo ra các đối tượng có kiểu dữ liệu phức tạp nhằm để lưu trữ dữ liệu tạm thời.
Mỗi Tuple định nghĩa sẵn các item1, item2, item3, item4,... Có tối đa 8 items được định nghĩa.
public class Tuple public class Tuple public class Tuple public class Tuple public class Tuple public class Tuple public class Tuple public class Tuple
Cách sử dụng và khai báo Tuple bằng Contructor trong C#
static void Example1() { var o1 = new Tuple(1, "Lap trinh VB", new DateTime(1988, 1, 10)); var o2 = new Tuple(2, "Thao Meo", new DateTime(2018, 11, 27)); Console.WriteLine("{0} {1}", o1.Item1, o1.Item2); Console.WriteLine(o1.Equals(o2)); }
=> sử dụng Tuple để trả về từ hàm hoặc phương thức.
Ví dụ: Viết một hàm khi nhập vào hai số a và b sẽ trả về kết quả của: tổng (a+b), hiệu (a-b), thương (a/b) và tích (a*b)
Thường thì chúng ta sẽ sử dụng từ khóa Ref hoặc out để trả về.
Và dưới đây, mình sẽ hướng dẫn các bạn sử dụng Tuple trong ví dụ này:
static void Example2() { var result = Calculator(); Console.WriteLine("Ket qua: {0} {1} {2} {3}", result.Item1, result.Item2, result.Item3, result.Item4); } static Tuple Calculator() { int a = 13, b = 8; return Tuple.Create(a + b, a - b, a * b, 1.0 * a / b); }
Để lấy các giá trị trong Tuple, chúng ta chỉ cần trỏ đến Item1 để lấy giá trị đầu tiên và Item2 để lấy giá trị thứ 2...
Have fun :)