---
title: NSComparisonPredicate
framework: foundation
role: symbol
role_heading: Class
path: foundation/nscomparisonpredicate
---

# NSComparisonPredicate

A specialized predicate for comparing expressions.

## Declaration

```swift
class NSComparisonPredicate
```

## Overview

Overview Use comparison predicates to compare the results of two expressions. You create a comparison predicate with an operator, a left expression, and a right expression, and use instances of the NSExpression class to represent those expressions. When you evaluate the predicate, it returns a BOOL value as the result of invoking the operator with the results of evaluating the expressions.

## Topics

### Creating Comparison Predicates

- [Displaying searchable content by using a search controller](uikit/displaying-searchable-content-by-using-a-search-controller.md)
- [init(leftExpression:rightExpression:customSelector:)](foundation/nscomparisonpredicate/init(leftexpression:rightexpression:customselector:).md)
- [init(leftExpression:rightExpression:modifier:type:options:)](foundation/nscomparisonpredicate/init(leftexpression:rightexpression:modifier:type:options:).md)
- [init(coder:)](foundation/nscomparisonpredicate/init(coder:).md)

### Getting Information About a Comparison Predicate

- [comparisonPredicateModifier](foundation/nscomparisonpredicate/comparisonpredicatemodifier.md)
- [NSComparisonPredicate.Modifier](foundation/nscomparisonpredicate/modifier.md)
- [customSelector](foundation/nscomparisonpredicate/customselector.md)
- [rightExpression](foundation/nscomparisonpredicate/rightexpression.md)
- [leftExpression](foundation/nscomparisonpredicate/leftexpression.md)
- [options](foundation/nscomparisonpredicate/options-swift.property.md)
- [NSComparisonPredicate.Options](foundation/nscomparisonpredicate/options-swift.struct.md)
- [predicateOperatorType](foundation/nscomparisonpredicate/predicateoperatortype.md)
- [NSComparisonPredicate.Operator](foundation/nscomparisonpredicate/operator.md)

## Relationships

### Inherits From

- [NSPredicate](foundation/nspredicate.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Filltering

- [Predicate](foundation/predicate.md)
- [PredicateError](foundation/predicateerror.md)
- [PredicateCodableConfiguration](foundation/predicatecodableconfiguration.md)
- [PredicateCodableKeyPathProviding](foundation/predicatecodablekeypathproviding.md)
- [PredicateExpression](foundation/predicateexpression.md)
- [StandardPredicateExpression](foundation/standardpredicateexpression.md)
- [PredicateExpressions](foundation/predicateexpressions.md)
- [PredicateBindings](foundation/predicatebindings.md)
- [NSPredicate](foundation/nspredicate.md)
- [NSExpression](foundation/nsexpression.md)
- [NSCompoundPredicate](foundation/nscompoundpredicate.md)
