using System.Collections;
using System.Collections.Generic;
public static void Main()
var hashSet = new HashSet<string> { "hi" };
var hashSetIsCollection = hashSet is ICollection;
var hashSetIsList = hashSet is IList;
var hashSetIsCollectionObject = hashSet is ICollection<object>;
var hashSetIsListObject = hashSet is IList<object>;
Console.WriteLine(hashSetIsCollection);
Console.WriteLine(hashSetIsList);
Console.WriteLine(hashSetIsCollectionObject);
Console.WriteLine(hashSetIsListObject);
var list = new List<string> { "hi" };
var listIsCollection = list is ICollection;
var listIsList = list is IList;
var listIsCollectionObject = list is ICollection<object>;
var listIsListObject = list is IList<object>;
Console.WriteLine(listIsCollection);
Console.WriteLine(listIsList);
Console.WriteLine(listIsCollectionObject);
Console.WriteLine(listIsListObject);