Wolfram Language symbolic expressions can represent an immense range of types of objects. The Wolfram Language provides a rich collection of functions to test expressions. Functions that "ask a question" have names that end in Q. They return True for an explicit true answer, and False otherwise.
NumericQ — numeric quantity (consisting of numbers, numeric constants, and functions)
ArrayQ — full array of any depth
MemberQ — test whether a pattern occurs in a list
MatchQ — test whether an expression matches a pattern
Order — canonical ordering of expressions