Phương thức TakeWhile() trả về các phần tử từ đầu chuỗi cho đến khi điều kiện không còn đúng. Khác với Where(), nó dừng lại ngay khi gặp phần tử đầu tiên không thỏa mãn điều kiện.
Ví dụ minh họa
Danh sách chuỗi:
IList<string> str = new List<string>() { "Car", "Bus", "Truck", "Airplane" };
Lấy các chuỗi có độ dài nhỏ hơn 4:
var res = str.TakeWhile(a => a.Length < 4);
Mã nguồn hoàn chỉnh
using System;
using System.Linq;
using System.Collections.Generic;
public class Demo
{
public static void Main()
{
IList<string> str = new List<string>() { "Car", "Bus", "Truck", "Airplane" };
var res = str.TakeWhile(a => a.Length < 4);
foreach (var arr in res)
Console.WriteLine(arr);
}
}
Kết quả đầu ra
Car Bus
Giải thích: "Car" (3) và "Bus" (3) thỏa mãn điều kiện. "Truck" (5) không thỏa mãn, nên dừng lại và không xét "Airplane".