Bool sort. Bools can be sorted. When stored in an array or List, they can be ordered with Sort methods. This allows you to order your collection by true or false.
This is useful for promoting or demoting elements programmatically. A sorted list of bools helps us prioritize "true" results over "false" results.
First example. One use for sorting bools is reordering a List of objects. Sometimes, you need to mark some elements in the List as "bad," pushing them to the bottom of the List.
Tip Bools have a default of false in a class or struct. With bools, the default Sort method will put false before true.
using System;
using System.Collections.Generic;
using System.Linq;
class TestData
{
public bool IsImportant { get; set; }
public string Data { get; set; }
}
class Program
{
static void Main()
{
// Add data to the list.
var items = new List<TestData>();
items.Add(new TestData() { IsImportant = true, Data = "Bird" });
items.Add(new TestData() { IsImportant = false, Data = "Cat" });
items.Add(new TestData() { IsImportant = true, Data = "Human" });
// Sort by bool on class.
var sorted = from item in items
orderby item.IsImportant descending
select item;
// Put "important" items first.
foreach (var item in sorted)
{
Console.WriteLine("ITEM: " + item.IsImportant + "; " + item.Data);
}
}
}ITEM: True; Bird
ITEM: True; Human
ITEM: False; Cat
A discussion. To filter, you can add a bool property or field to your class, and then as sign that to true or false depending on whether you want to give the item priority.
So Use true to promote the class. Sort the objects with the LINQ query syntax, using the order by descending clause.
A summary. Bools are sorted from false to true. The descending sort will order them from true to false. True is essentially equal to 1, and false to 0.
Use boolean sorting for selection algorithms where some objects should be demoted. This helps when we do not want to eliminate items from consideration, but want to prioritize others.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.
This page was last updated on Mar 22, 2023 (edit).