using System.Collections.Generic;
public static class ListExtensions {
public static bool IsNullOrEmpty<T>(this IEnumerable<T> enumerable)
=> enumerable == null ? true : !enumerable.Any();
public static void Main()
Console.WriteLine("-----------------------\nArrays\n");
var emptyArray = new int[0];
var anAarray = new int[]{1,2};
Console.WriteLine($"IsNullOrEmpty(nullArray): {ListExtensions.IsNullOrEmpty(nullArray)}");
Console.WriteLine($"IsNullOrEmpty(emptyArray): {ListExtensions.IsNullOrEmpty(emptyArray)}");
Console.WriteLine($"IsNullOrEmpty(anAarray): {ListExtensions.IsNullOrEmpty(anAarray)}");
Console.WriteLine("-----------------------\nLists\n");
List<int> nullList = null;
List<int> emptyList = new List<int>();
List<int> aList = new List<int>() {1,2,3};
Console.WriteLine($"IsNullOrEmpty(nullList): {ListExtensions.IsNullOrEmpty(nullList)}");
Console.WriteLine($"IsNullOrEmpty(emptyList): {ListExtensions.IsNullOrEmpty(emptyList)}");
Console.WriteLine($"IsNullOrEmpty(aList): {ListExtensions.IsNullOrEmpty(aList)}");
Console.WriteLine("-----------------------\nDictionaries\n");
Dictionary<int, int> nullDict = null;
Dictionary<int, int> emptyDict = new Dictionary<int, int>();
Dictionary<int, int> aDict = new Dictionary<int, int>() {{1,1}};
Console.WriteLine($"IsNullOrEmpty(nullDict): {ListExtensions.IsNullOrEmpty(nullDict)}");
Console.WriteLine($"IsNullOrEmpty(emptyDict): {ListExtensions.IsNullOrEmpty(emptyDict)}");
Console.WriteLine($"IsNullOrEmpty(aDict): {ListExtensions.IsNullOrEmpty(aDict)}");