Expressions • Boolean expressions can be thought of as test conditions (questions) that are either true or false • Often two values (numbers, strings) are compared, return value is a boolean (i.e. true or false) • For example: Is A greater than B?, Is A equal to B?, Is A less than or equal to B? • Comparison operators are used for boolean expressions (<, >, <=, >=, ==, ===, !=. !==, …) • A and B can be any data type (or class), but they generally are a "compatible" data type (or class) • Comparisons are either numeric or lexicographic but can be user-defined via objects and functions. • Comparing non-compatible types is legal but may have unexpected results.