## Uses of Interface
java.lang.Comparable

Packages that use Comparable
com.sun.javadoc: Note: The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
com.sun.jdi: This is the core package of the Java Debug Interface (JDI), it defines mirrors for values, types, and the target VirtualMachine itself - as well bootstrapping facilities.
com.sun.management: This package contains the JDK's extension to the standard implementation of the `java.lang.management` API and also defines the management interface for some other components of the platform.
com.sun.nio.sctp: A Java API for Stream Control Transport Protocol.
com.sun.security.jgss: This package defines classes and interfaces for the JDK extensions to the GSS-API.
com.sun.source.doctree: Provides interfaces to represent documentation comments as abstract syntax trees (AST).
com.sun.source.tree: Provides interfaces to represent source code as abstract syntax trees (AST).
com.sun.source.util: Provides utilities for operations on abstract syntax trees (AST).
com.sun.tools.jconsole: This package contains the JConsole API.
java.awt: Contains all of the classes for creating user interfaces and for painting graphics and images.
java.awt.desktop: Provides interfaces and classes for interaction with various desktop capabilities.
java.awt.event: Provides interfaces and classes for dealing with different types of events fired by AWT components.
java.awt.font: Provides classes and interface relating to fonts.
java.io: Provides for system input and output through data streams, serialization and the file system.
java.lang: Provides classes that are fundamental to the design of the Java programming language.
java.lang.annotation: Provides library support for the Java programming language annotation facility.
java.lang.invoke: The `java.lang.invoke` package provides low-level primitives for interacting with the Java Virtual Machine.
java.lang.management: Provides the management interfaces for monitoring and management of the Java virtual machine and other components in the Java runtime.
java.lang.module: Classes to support module descriptors and creating configurations of modules by means of resolution and service binding.
java.math: Provides classes for performing arbitrary-precision integer arithmetic (`BigInteger`) and arbitrary-precision decimal arithmetic (`BigDecimal`).
java.net: Provides the classes for implementing networking applications.
java.net.http: HTTP Client and WebSocket APIs
java.nio: Defines buffers, which are containers for data, and provides an overview of the other NIO packages.
java.nio.charset: Defines charsets, decoders, and encoders, for translating between bytes and Unicode characters.
java.nio.file: Defines interfaces and classes for the Java virtual machine to access files, file attributes, and file systems.
java.nio.file.attribute: Interfaces and classes providing access to file and file system attributes.
java.security: Provides the classes and interfaces for the security framework.
java.security.cert: Provides classes and interfaces for parsing and managing certificates, certificate revocation lists (CRLs), and certification paths.
java.sql: Provides the API for accessing and processing data stored in a data source (usually a relational database) using the Java™ programming language.
java.text: Provides classes and interfaces for handling text, dates, numbers, and messages in a manner independent of natural languages.
java.time: The main API for dates, times, instants, and durations.
java.time.chrono: Generic API for calendar systems other than the default ISO.
java.time.format: Provides classes to print and parse dates and times.
java.time.temporal: Access to date and time using fields and units, and date time adjusters.
java.time.zone: Support for time-zones and their rules.
java.util: Contains the collections framework, some internationalization support classes, a service loader, properties, random number generation, string parsing and scanning classes, base64 encoding and decoding, a bit array, and several miscellaneous utility classes.
java.util.concurrent: Utility classes commonly useful in concurrent programming.
java.util.stream: Classes to support functional-style operations on streams of elements, such as map-reduce transformations on collections.
javax.imageio.metadata: A package of the Java Image I/O API dealing with reading and writing metadata.
javax.lang.model: Classes and hierarchies of packages used to model the Java programming language.
javax.lang.model.element: Interfaces used to model elements of the Java programming language.
javax.lang.model.type: Interfaces used to model Java programming language types.
javax.lang.model.util: Utilities to assist in the processing of program elements and types.
javax.management: Provides the core classes for the Java Management Extensions.
javax.management.openmbean: Provides the open data types and Open MBean descriptor classes.
javax.naming: Provides the classes and interfaces for accessing naming services.
javax.naming.ldap: Provides support for LDAPv3 extended operations and controls.
javax.net.ssl: Provides classes for the secure socket package.
javax.smartcardio: Java™ Smart Card I/O API
javax.swing: Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
javax.swing.event: Provides for events fired by Swing components.
javax.swing.plaf.nimbus: Provides user interface objects built according to the cross-platform Nimbus look and feel.
javax.swing.text: Provides classes and interfaces that deal with editable and noneditable text components.
javax.swing.text.html: Provides the class `HTMLEditorKit` and supporting classes for creating HTML text editors.
javax.tools: Provides interfaces for tools which can be invoked from a program, for example, compilers.
javax.xml.catalog: Provides the classes for implementing XML Catalogs OASIS Standard V1.1, 7 October 2005.
javax.xml.xpath: Provides an object-model neutral API for the evaluation of XPath expressions and access to the evaluation environment.
jdk.dynalink: Contains interfaces and classes that are used to link an `invokedynamic` call site.
jdk.dynalink.linker: Contains interfaces and classes needed by language runtimes to implement their own language-specific object models and type conversions.
jdk.javadoc.doclet: The Doclet API provides an environment which, in conjunction with the Language Model API and Compiler Tree API, allows clients to inspect the source-level structures of programs and libraries, including API comments embedded in the source.
jdk.jfr: This package provides classes to create events and control Flight Recorder.
jdk.jshell: Provides interfaces for creating tools, such as a Read-Eval-Print Loop (REPL), which interactively evaluate "snippets" of Java programming language code.
jdk.nashorn.api.tree: Nashorn parser API provides interfaces to represent ECMAScript source code as abstract syntax trees (AST) and Parser to parse ECMAScript source scripts.
jdk.net: Platform specific socket options for the `java.net` and `java.nio.channels` socket classes.

### Uses of Comparable in com.sun.javadoc

Subinterfaces of Comparable in com.sun.javadoc
`interface` `AnnotationTypeDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `AnnotationTypeElementDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `ClassDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `ConstructorDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `Doc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `ExecutableMemberDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `FieldDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `MemberDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `MethodDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `PackageDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `ProgramElementDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `RootDoc` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.
`interface` `SerialFieldTag` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.

Classes in com.sun.javadoc that implement Comparable
`class` `LanguageVersion` Deprecated, for removal: This API element is subject to removal in a future version. The declarations in this package have been superseded by those in the package `jdk.javadoc.doclet`.

### Uses of Comparable in com.sun.jdi

Subinterfaces of Comparable in com.sun.jdi
`interface` `ArrayType` Provides access to the class of an array and the type of its components in the target VM.
`interface` `ByteValue` Provides access to a primitive `byte` value in the target VM.
`interface` `CharValue` Provides access to a primitive `char` value in the target VM.
`interface` `ClassType` A mirror of a class in the target VM.
`interface` `DoubleValue` Provides access to a primitive `double` value in the target VM.
`interface` `Field` A class or instance variable in the target VM.
`interface` `FloatValue` Provides access to a primitive `float` value in the target VM.
`interface` `IntegerValue` Provides access to a primitive `int` value in the target VM.
`interface` `InterfaceType` A mirror of an interface in the target VM.
`interface` `LocalVariable` A local variable in the target VM.
`interface` `Location` A point within the executing code of the target VM.
`interface` `LongValue` Provides access to a primitive `long` value in the target VM.
`interface` `Method` A static or instance method in the target VM.
`interface` `ReferenceType` The type of an object in a target VM.
`interface` `ShortValue` Provides access to a primitive `short` value in the target VM.

### Uses of Comparable in com.sun.management

Classes in com.sun.management that implement Comparable
`static class` `VMOption.Origin` Origin of the value of a VM option.

### Uses of Comparable in com.sun.nio.sctp

Classes in com.sun.nio.sctp that implement Comparable
`static class` `AssociationChangeNotification.AssocChangeEvent` Defines the type of change event that happened to the association.
`class` `HandlerResult` Defines notification handler results.
`static class` `PeerAddressChangeNotification.AddressChangeEvent` Defines the type of address change event that occurred to the destination address on a multi-homed peer when it encounters a change of interface details.

### Uses of Comparable in com.sun.security.jgss

Classes in com.sun.security.jgss that implement Comparable
`class` `InquireType` Attribute types that can be specified as an argument of `ExtendedGSSContext.inquireSecContext(com.sun.security.jgss.InquireType)`

### Uses of Comparable in com.sun.source.doctree

Classes in com.sun.source.doctree that implement Comparable
`static class` `AttributeTree.ValueKind` The kind of an attribute value.
`static class` `DocTree.Kind` Enumerates all kinds of trees.

### Uses of Comparable in com.sun.source.tree

Classes in com.sun.source.tree that implement Comparable
`static class` `LambdaExpressionTree.BodyKind` Lambda expressions come in two forms: expression lambdas, whose body is an expression, and statement lambdas, whose body is a block
`static class` `MemberReferenceTree.ReferenceMode` There are two kinds of member references: (i) method references and (ii) constructor references
`static class` `ModuleTree.ModuleKind` The kind of the module.
`static class` `Tree.Kind` Enumerates all kinds of trees.

### Uses of Comparable in com.sun.source.util

Classes in com.sun.source.util that implement Comparable
`static class` `TaskEvent.Kind` Kind of task event.

### Uses of Comparable in com.sun.tools.jconsole

Classes in com.sun.tools.jconsole that implement Comparable
`static class` `JConsoleContext.ConnectionState` Values for the ConnectionState bound property.

### Uses of Comparable in java.awt

Classes in java.awt that implement Comparable
`static class` `Component.BaselineResizeBehavior` Enumeration of the common ways the baseline of a component can change as the size changes.
`static class` `Desktop.Action` Represents an action type.
`static class` `Dialog.ModalExclusionType` Any top-level window can be marked not to be blocked by modal dialogs.
`static class` `Dialog.ModalityType` Modal dialogs block all input to some top-level windows.
`static class` `GraphicsDevice.WindowTranslucency` Kinds of translucency supported by the underlying system.
`static class` `MultipleGradientPaint.ColorSpaceType` The color space in which to perform the gradient interpolation.
`static class` `MultipleGradientPaint.CycleMethod` The method to use when painting outside the gradient bounds.
`static class` `Taskbar.Feature` List of provided features.
`static class` `Taskbar.State` Kinds of available window progress states.
`static class` `TrayIcon.MessageType` The message type determines which icon will be displayed in the caption of the message, and a possible system sound a message may generate upon showing.
`static class` `Window.Type` Enumeration of available window types.

### Uses of Comparable in java.awt.desktop

Classes in java.awt.desktop that implement Comparable
`class` `QuitStrategy` The strategy used to shut down the application, if Sudden Termination is not enabled.
`static class` `UserSessionEvent.Reason` Kinds of available reasons of user session change.

### Uses of Comparable in java.awt.event

Classes in java.awt.event that implement Comparable
`static class` `FocusEvent.Cause` This enum represents the cause of a `FocusEvent`- the reason why it occurred.

### Uses of Comparable in java.awt.font

Classes in java.awt.font that implement Comparable
`static class` `NumericShaper.Range` A `NumericShaper.Range` represents a Unicode range of a script having its own decimal digits.

### Uses of Comparable in java.io

Classes in java.io that implement Comparable
`class` `File` An abstract representation of file and directory pathnames.
`static class` `ObjectInputFilter.Status` The status of a check on the class, array length, number of references, depth, and stream size.
`class` `ObjectStreamField` A description of a Serializable field from a Serializable class.

### Uses of Comparable in java.lang

Subinterfaces of Comparable in java.lang
`interface` `ProcessHandle` ProcessHandle identifies and provides control of native processes.

Classes in java.lang that implement Comparable
`class` `Boolean` The Boolean class wraps a value of the primitive type `boolean` in an object.
`class` `Byte` The `Byte` class wraps a value of primitive type `byte` in an object.
`class` `Character` The `Character` class wraps a value of the primitive type `char` in an object.
`static class` `Character.UnicodeScript` A family of character subsets representing the character scripts defined in the Unicode Standard Annex #24: Script Names.
`class` `Double` The `Double` class wraps a value of the primitive type `double` in an object.
`class` `Enum<E extends Enum<E>>` This is the common base class of all Java language enumeration types.
`class` `Float` The `Float` class wraps a value of primitive type `float` in an object.
`class` `Integer` The `Integer` class wraps a value of the primitive type `int` in an object.
`class` `Long` The `Long` class wraps a value of the primitive type `long` in an object.
`static class` `ProcessBuilder.Redirect.Type` The type of a `ProcessBuilder.Redirect`.
`static class` `Runtime.Version` A representation of a version string for an implementation of the Java SE Platform.
`class` `Short` The `Short` class wraps a value of primitive type `short` in an object.
`static class` `StackWalker.Option` Stack walker option to configure the stack frame information obtained by a `StackWalker`.
`class` `String` The `String` class represents character strings.
`class` `StringBuffer` A thread-safe, mutable sequence of characters.
`class` `StringBuilder` A mutable sequence of characters.
`static class` `System.Logger.Level` System loggers levels.
`static class` `Thread.State` A thread state.

### Uses of Comparable in java.lang.annotation

Classes in java.lang.annotation that implement Comparable
`class` `ElementType` The constants of this enumerated type provide a simple classification of the syntactic locations where annotations may appear in a Java program.
`class` `RetentionPolicy` Annotation retention policy.

### Uses of Comparable in java.lang.invoke

Classes in java.lang.invoke that implement Comparable
`static class` `VarHandle.AccessMode` The set of access modes that specify how a variable, referenced by a VarHandle, is accessed.

### Uses of Comparable in java.lang.management

Classes in java.lang.management that implement Comparable
`class` `MemoryType` Types of `memory pools`.

### Uses of Comparable in java.lang.module

Classes in java.lang.module that implement Comparable
`class` `ModuleDescriptor` A module descriptor.
`static class` `ModuleDescriptor.Exports` A package exported by a module, may be qualified or unqualified.
`static class` `ModuleDescriptor.Exports.Modifier` A modifier on an exported package.
`static class` `ModuleDescriptor.Modifier` A modifier on a module.
`static class` `ModuleDescriptor.Opens` A package opened by a module, may be qualified or unqualified.
`static class` `ModuleDescriptor.Opens.Modifier` A modifier on an open package.
`static class` `ModuleDescriptor.Provides` A service that a module provides one or more implementations of.
`static class` `ModuleDescriptor.Requires` A dependence upon a module
`static class` `ModuleDescriptor.Requires.Modifier` A modifier on a module dependence.
`static class` `ModuleDescriptor.Version` A module's version string.

### Uses of Comparable in java.math

Classes in java.math that implement Comparable
`class` `BigDecimal` Immutable, arbitrary-precision signed decimal numbers.
`class` `BigInteger` Immutable arbitrary-precision integers.
`class` `RoundingMode` Specifies a rounding behavior for numerical operations capable of discarding precision.

### Uses of Comparable in java.net

Classes in java.net that implement Comparable
`static class` `Authenticator.RequestorType` The type of the entity requesting authentication.
`static class` `Proxy.Type` Represents the proxy type.
`class` `StandardProtocolFamily` Defines the standard families of communication protocols.
`class` `URI` Represents a Uniform Resource Identifier (URI) reference.

### Uses of Comparable in java.net.http

Classes in java.net.http that implement Comparable
`static class` `HttpClient.Redirect` Defines the automatic redirection policy.
`static class` `HttpClient.Version` The HTTP protocol version.

### Uses of Comparable in java.nio

Classes in java.nio that implement Comparable
`class` `ByteBuffer` A byte buffer.
`class` `CharBuffer` A char buffer.
`class` `DoubleBuffer` A double buffer.
`class` `FloatBuffer` A float buffer.
`class` `IntBuffer` An int buffer.
`class` `LongBuffer` A long buffer.
`class` `MappedByteBuffer` A direct byte buffer whose content is a memory-mapped region of a file.
`class` `ShortBuffer` A short buffer.

### Uses of Comparable in java.nio.charset

Classes in java.nio.charset that implement Comparable
`class` `Charset` A named mapping between sequences of sixteen-bit Unicode code units and sequences of bytes.

### Uses of Comparable in java.nio.file

Subinterfaces of Comparable in java.nio.file
`interface` `Path` An object that may be used to locate a file in a file system.

Classes in java.nio.file that implement Comparable
`class` `AccessMode` Defines access modes used to test the accessibility of a file.
`class` `FileVisitOption` Defines the file tree traversal options.
`class` `FileVisitResult` The result type of a `FileVisitor`.
`class` `LinkOption` Defines the options as to how symbolic links are handled.
`class` `StandardCopyOption` Defines the standard copy options.
`class` `StandardOpenOption` Defines the standard open options.

### Uses of Comparable in java.nio.file.attribute

Classes in java.nio.file.attribute that implement Comparable
`class` `AclEntryFlag` Defines the flags for used by the flags component of an ACL `entry`.
`class` `AclEntryPermission` Defines the permissions for use with the permissions component of an ACL `entry`.
`class` `AclEntryType` A typesafe enumeration of the access control entry types.
`class` `FileTime` Represents the value of a file's time stamp attribute.
`class` `PosixFilePermission` Defines the bits for use with the `permissions` attribute.

### Uses of Comparable in java.security

Classes in java.security that implement Comparable
`class` `CryptoPrimitive` An enumeration of cryptographic primitives.
`static class` `DrbgParameters.Capability` The reseedable and prediction resistance capabilities of a DRBG.
`static class` `KeyRep.Type` Key type.

### Uses of Comparable in java.security.cert

Classes in java.security.cert that implement Comparable
`static class` `CertPathValidatorException.BasicReason` The BasicReason enumerates the potential reasons that a certification path of any type may be invalid.
`class` `CRLReason` The CRLReason enumeration specifies the reason that a certificate is revoked, as defined in RFC 5280: Internet X.509 Public Key Infrastructure Certificate and CRL Profile.
`class` `PKIXReason` The `PKIXReason` enumerates the potential PKIX-specific reasons that an X.509 certification path may be invalid according to the PKIX (RFC 5280) standard.
`static class` `PKIXRevocationChecker.Option` Various revocation options that can be specified for the revocation checking mechanism.

### Uses of Comparable in java.sql

Classes in java.sql that implement Comparable
`class` `ClientInfoStatus` Enumeration for status of the reason that a property could not be set via a call to `Connection.setClientInfo`
`class` `Date` A thin wrapper around a millisecond value that allows JDBC to identify this as an SQL `DATE` value.
`class` `JDBCType` Defines the constants that are used to identify generic SQL types, called JDBC types.
`class` `PseudoColumnUsage` Enumeration for pseudo/hidden column usage.
`class` `RowIdLifetime` Enumeration for RowId life-time values.
`class` `Time` A thin wrapper around the `java.util.Date` class that allows the JDBC API to identify this as an SQL `TIME` value.
`class` `Timestamp` A thin wrapper around `java.util.Date` that allows the JDBC API to identify this as an SQL `TIMESTAMP` value.

### Uses of Comparable in java.text

Classes in java.text that implement Comparable
`class` `CollationKey` A `CollationKey` represents a `String` under the rules of a specific `Collator` object.
`static class` `Normalizer.Form` This enum provides constants of the four Unicode normalization forms that are described in Unicode Standard Annex #15 — Unicode Normalization Forms and two methods to access them.

### Uses of Comparable in java.time

Classes in java.time that implement Comparable
`class` `DayOfWeek` A day-of-week, such as 'Tuesday'.
`class` `Duration` A time-based amount of time, such as '34.5 seconds'.
`class` `Instant` An instantaneous point on the time-line.
`class` `LocalDate` A date without a time-zone in the ISO-8601 calendar system, such as `2007-12-03`.
`class` `LocalDateTime` A date-time without a time-zone in the ISO-8601 calendar system, such as `2007-12-03T10:15:30`.
`class` `LocalTime` A time without a time-zone in the ISO-8601 calendar system, such as `10:15:30`.
`class` `Month` A month-of-year, such as 'July'.
`class` `MonthDay` A month-day in the ISO-8601 calendar system, such as `--12-03`.
`class` `OffsetDateTime` A date-time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as `2007-12-03T10:15:30+01:00`.
`class` `OffsetTime` A time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as `10:15:30+01:00`.
`class` `Year` A year in the ISO-8601 calendar system, such as `2007`.
`class` `YearMonth` A year-month in the ISO-8601 calendar system, such as `2007-12`.
`class` `ZonedDateTime` A date-time with a time-zone in the ISO-8601 calendar system, such as `2007-12-03T10:15:30+01:00 Europe/Paris`.
`class` `ZoneOffset` A time-zone offset from Greenwich/UTC, such as `+02:00`.

### Uses of Comparable in java.time.chrono

Subinterfaces of Comparable in java.time.chrono
`interface` `ChronoLocalDate` A date without time-of-day or time-zone in an arbitrary chronology, intended for advanced globalization use cases.
`interface` `ChronoLocalDateTime<D extends ChronoLocalDate>` A date-time without a time-zone in an arbitrary chronology, intended for advanced globalization use cases.
`interface` `Chronology` A calendar system, used to organize and identify dates.
`interface` `ChronoZonedDateTime<D extends ChronoLocalDate>` A date-time with a time-zone in an arbitrary chronology, intended for advanced globalization use cases.

Classes in java.time.chrono that implement Comparable
`class` `AbstractChronology` An abstract implementation of a calendar system, used to organize and identify dates.
`class` `HijrahChronology` The Hijrah calendar is a lunar calendar supporting Islamic calendars.
`class` `HijrahDate` A date in the Hijrah calendar system.
`class` `HijrahEra` An era in the Hijrah calendar system.
`class` `IsoChronology` The ISO calendar system.
`class` `IsoEra` An era in the ISO calendar system.
`class` `JapaneseChronology` The Japanese Imperial calendar system.
`class` `JapaneseDate` A date in the Japanese Imperial calendar system.
`class` `MinguoChronology` The Minguo calendar system.
`class` `MinguoDate` A date in the Minguo calendar system.
`class` `MinguoEra` An era in the Minguo calendar system.
`class` `ThaiBuddhistChronology` The Thai Buddhist calendar system.
`class` `ThaiBuddhistDate` A date in the Thai Buddhist calendar system.
`class` `ThaiBuddhistEra` An era in the Thai Buddhist calendar system.

### Uses of Comparable in java.time.format

Classes in java.time.format that implement Comparable
`class` `FormatStyle` Enumeration of the style of a localized date, time or date-time formatter.
`class` `ResolverStyle` Enumeration of different ways to resolve dates and times.
`class` `SignStyle` Enumeration of ways to handle the positive/negative sign.
`class` `TextStyle` Enumeration of the style of text formatting and parsing.

### Uses of Comparable in java.time.temporal

Classes in java.time.temporal that implement Comparable
`class` `ChronoField` A standard set of fields.
`class` `ChronoUnit` A standard set of date periods units.

### Uses of Comparable in java.time.zone

Classes in java.time.zone that implement Comparable
`class` `ZoneOffsetTransition` A transition between two offsets caused by a discontinuity in the local time-line.
`static class` `ZoneOffsetTransitionRule.TimeDefinition` A definition of the way a local time can be converted to the actual transition date-time.

### Uses of Comparable in java.util

Classes in java.util that implement Comparable
`class` `Calendar` The `Calendar` class is an abstract class that provides methods for converting between a specific instant in time and a set of `calendar fields` such as `YEAR`, `MONTH`, `DAY_OF_MONTH`, `HOUR`, and so on, and for manipulating the calendar fields, such as getting the date of the next week.
`class` `Date` The class `Date` represents a specific instant in time, with millisecond precision.
`static class` `Formatter.BigDecimalLayoutForm` Enum for `BigDecimal` formatting.
`class` `GregorianCalendar` `GregorianCalendar` is a concrete subclass of `Calendar` and provides the standard calendar system used by most of the world.
`static class` `Locale.Category` Enum for locale categories.
`static class` `Locale.FilteringMode` This enum provides constants to select a filtering mode for locale matching.
`static class` `Locale.IsoCountryCode` Enum for specifying the type defined in ISO 3166.
`class` `UUID` A class that represents an immutable universally unique identifier (UUID).

Methods in java.util with type parameters of type Comparable
`static <T extends Comparable<? super T>> int` Arrays.`compare​(T[] a, int aFromIndex, int aToIndex, T[] b, int bFromIndex, int bToIndex)` Compares two `Object` arrays lexicographically over the specified ranges.
`static <T extends Comparable<? super T>> int` Arrays.`compare​(T[] a, T[] b)` Compares two `Object` arrays, within comparable elements, lexicographically.
`static <T,​U extends Comparable<? super U>> Comparator<T>` Comparator.`comparing​(Function<? super T,​? extends U> keyExtractor)` Accepts a function that extracts a `Comparable` sort key from a type `T`, and returns a `Comparator<T>` that compares by that sort key.
`static <K extends Comparable<? super K>,​V> Comparator<Map.Entry<K,​V>>` Map.Entry.`comparingByKey()` Returns a comparator that compares `Map.Entry` in natural order on key.
`static <K,​V extends Comparable<? super V>> Comparator<Map.Entry<K,​V>>` Map.Entry.`comparingByValue()` Returns a comparator that compares `Map.Entry` in natural order on value.
`static <T extends Object & Comparable<? super T>> T` Collections.`max​(Collection<? extends T> coll)` Returns the maximum element of the given collection, according to the natural ordering of its elements.
`static <T extends Object & Comparable<? super T>> T` Collections.`min​(Collection<? extends T> coll)` Returns the minimum element of the given collection, according to the natural ordering of its elements.
`static <T extends Comparable<? super T>> Comparator<T>` Comparator.`naturalOrder()` Returns a comparator that compares `Comparable` objects in natural order.
`static <T extends Comparable<? super T>> void` Arrays.`parallelSort​(T[] a)` Sorts the specified array of objects into ascending order, according to the natural ordering of its elements.
`static <T extends Comparable<? super T>> void` Arrays.`parallelSort​(T[] a, int fromIndex, int toIndex)` Sorts the specified range of the specified array of objects into ascending order, according to the natural ordering of its elements.
`static <T extends Comparable<? super T>> Comparator<T>` Comparator.`reverseOrder()` Returns a comparator that imposes the reverse of the natural ordering.
`static <T extends Comparable<? super T>> void` Collections.`sort​(List<T> list)` Sorts the specified list into ascending order, according to the natural ordering of its elements.
`default <U extends Comparable<? super U>> Comparator<T>` Comparator.`thenComparing​(Function<? super T,​? extends U> keyExtractor)` Returns a lexicographic-order comparator with a function that extracts a `Comparable` sort key.

Methods in java.util with parameters of type Comparable
`static <T extends Comparable<? super T>> int` Arrays.`compare​(T[] a, int aFromIndex, int aToIndex, T[] b, int bFromIndex, int bToIndex)` Compares two `Object` arrays lexicographically over the specified ranges.
`static <T extends Comparable<? super T>> int` Arrays.`compare​(T[] a, T[] b)` Compares two `Object` arrays, within comparable elements, lexicographically.
`static <T extends Comparable<? super T>> void` Arrays.`parallelSort​(T[] a)` Sorts the specified array of objects into ascending order, according to the natural ordering of its elements.
`static <T extends Comparable<? super T>> void` Arrays.`parallelSort​(T[] a, int fromIndex, int toIndex)` Sorts the specified range of the specified array of objects into ascending order, according to the natural ordering of its elements.

Method parameters in java.util with type arguments of type Comparable
`static <T> int` Collections.`binarySearch​(List<? extends Comparable<? super T>> list, T key)` Searches the specified list for the specified object using the binary search algorithm.

### Uses of Comparable in java.util.concurrent

Subinterfaces of Comparable in java.util.concurrent
`interface` `Delayed` A mix-in style interface for marking objects that should be acted upon after a given delay.
`interface` `RunnableScheduledFuture<V>` A `ScheduledFuture` that is `Runnable`.
`interface` `ScheduledFuture<V>` A delayed result-bearing action that can be cancelled.

Classes in java.util.concurrent that implement Comparable
`class` `TimeUnit` A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

### Uses of Comparable in java.util.stream

Classes in java.util.stream that implement Comparable
`static class` `Collector.Characteristics` Characteristics indicating properties of a `Collector`, which can be used to optimize reduction implementations.

### Uses of Comparable in javax.imageio.metadata

Methods in javax.imageio.metadata with type parameters of type Comparable
`protected <T extends Object & Comparable<? super T>> void` IIOMetadataFormatImpl.`addObjectValue​(String elementName, Class<T> classType, T defaultValue, Comparable<? super T> minValue, Comparable<? super T> maxValue, boolean minInclusive, boolean maxInclusive)` Allows an `Object` reference of a given class type to be stored in nodes implementing the named element.

Methods in javax.imageio.metadata that return Comparable
`Comparable<?>` IIOMetadataFormat.`getObjectMaxValue​(String elementName)` Returns the maximum legal value for the `Object` reference within the named element.
`Comparable<?>` IIOMetadataFormat.`getObjectMinValue​(String elementName)` Returns the minimum legal value for the `Object` reference within the named element.

Methods in javax.imageio.metadata with parameters of type Comparable
`protected <T extends Object & Comparable<? super T>> void` IIOMetadataFormatImpl.`addObjectValue​(String elementName, Class<T> classType, T defaultValue, Comparable<? super T> minValue, Comparable<? super T> maxValue, boolean minInclusive, boolean maxInclusive)` Allows an `Object` reference of a given class type to be stored in nodes implementing the named element.

### Uses of Comparable in javax.lang.model

Classes in javax.lang.model that implement Comparable
`class` `SourceVersion` Source versions of the Java™ programming language.

### Uses of Comparable in javax.lang.model.element

Classes in javax.lang.model.element that implement Comparable
`class` `ElementKind` The `kind` of an element.
`class` `Modifier` Represents a modifier on a program element such as a class, method, or field.
`static class` `ModuleElement.DirectiveKind` The `kind` of a directive.
`class` `NestingKind` The nesting kind of a type element.

### Uses of Comparable in javax.lang.model.type

Classes in javax.lang.model.type that implement Comparable
`class` `TypeKind` The kind of a type mirror.

### Uses of Comparable in javax.lang.model.util

Classes in javax.lang.model.util that implement Comparable
`static class` `Elements.Origin` The origin of an element or other language model item.

### Uses of Comparable in javax.management

Classes in javax.management that implement Comparable
`class` `ObjectName` Represents the object name of an MBean, or a pattern that can match the names of several MBeans.

### Uses of Comparable in javax.management.openmbean

Methods in javax.management.openmbean that return Comparable
`Comparable<?>` OpenMBeanAttributeInfoSupport.`getMaxValue()` Returns the maximal value for the attribute described by this `OpenMBeanAttributeInfoSupport` instance, if specified, or `null` otherwise.
`Comparable<?>` OpenMBeanParameterInfo.`getMaxValue()` Returns the maximal value for this parameter, if it has one, or `null` otherwise.
`Comparable<?>` OpenMBeanParameterInfoSupport.`getMaxValue()` Returns the maximal value for the parameter described by this `OpenMBeanParameterInfoSupport` instance, if specified, or `null` otherwise.
`Comparable<?>` OpenMBeanAttributeInfoSupport.`getMinValue()` Returns the minimal value for the attribute described by this `OpenMBeanAttributeInfoSupport` instance, if specified, or `null` otherwise.
`Comparable<?>` OpenMBeanParameterInfo.`getMinValue()` Returns the minimal value for this parameter, if it has one, or `null` otherwise.
`Comparable<?>` OpenMBeanParameterInfoSupport.`getMinValue()` Returns the minimal value for the parameter described by this `OpenMBeanParameterInfoSupport` instance, if specified, or `null` otherwise.

Constructors in javax.management.openmbean with parameters of type Comparable

`OpenMBeanAttributeInfoSupport​(String name, String description, OpenType<T> openType, boolean isReadable, boolean isWritable, boolean isIs, T defaultValue, Comparable<T> minValue, Comparable<T> maxValue)`

Constructs an `OpenMBeanAttributeInfoSupport` instance, which describes the attribute of an open MBean, with the specified `name`, `openType`, `description`, `defaultValue`, `minValue` and `maxValue`.

`OpenMBeanParameterInfoSupport​(String name, String description, OpenType<T> openType, T defaultValue, Comparable<T> minValue, Comparable<T> maxValue)`

Constructs an `OpenMBeanParameterInfoSupport` instance, which describes the parameter used in one or more operations or constructors of a class of open MBeans, with the specified `name`, `openType`, `description`, `defaultValue`, `minValue` and `maxValue`.

### Uses of Comparable in javax.naming

Subinterfaces of Comparable in javax.naming
`interface` `Name` The `Name` interface represents a generic name -- an ordered sequence of components.

Classes in javax.naming that implement Comparable
`class` `CompositeName` This class represents a composite name -- a sequence of component names spanning multiple namespaces.
`class` `CompoundName` This class represents a compound name -- a name from a hierarchical name space.

### Uses of Comparable in javax.naming.ldap

Classes in javax.naming.ldap that implement Comparable
`class` `LdapName` This class represents a distinguished name as specified by RFC 2253.
`class` `Rdn` This class represents a relative distinguished name, or RDN, which is a component of a distinguished name as specified by RFC 2253.

### Uses of Comparable in javax.net.ssl

Classes in javax.net.ssl that implement Comparable
`static class` `SSLEngineResult.HandshakeStatus` An `SSLEngineResult` enum describing the current handshaking state of this `SSLEngine`.
`static class` `SSLEngineResult.Status` An `SSLEngineResult` enum describing the overall result of the `SSLEngine` operation.

### Uses of Comparable in javax.smartcardio

Classes in javax.smartcardio that implement Comparable
`static class` `CardTerminals.State` Enumeration of attributes of a CardTerminal.

### Uses of Comparable in javax.swing

Classes in javax.swing that implement Comparable
`class` `DropMode` Drop modes, used to determine the method by which a component tracks and indicates a drop location during drag and drop.
`static class` `GroupLayout.Alignment` Enumeration of the possible ways `ParallelGroup` can align its children.
`static class` `JTable.PrintMode` Printing modes, used in printing `JTable`s.
`static class` `LayoutStyle.ComponentPlacement` `ComponentPlacement` is an enumeration of the possible ways two components can be placed relative to each other.
`static class` `RowFilter.ComparisonType` Enumeration of the possible comparison values supported by some of the default `RowFilter`s.
`class` `SortOrder` SortOrder is an enumeration of the possible sort orderings.
`static class` `SwingWorker.StateValue` Values for the `state` bound property.

Methods in javax.swing that return Comparable
`Comparable<Date>` SpinnerDateModel.`getEnd()` Returns the last `Date` in the sequence.
`Comparable<?>` SpinnerNumberModel.`getMaximum()` Returns the last number in the sequence.
`Comparable<?>` SpinnerNumberModel.`getMinimum()` Returns the first number in this sequence.
`Comparable<Date>` SpinnerDateModel.`getStart()` Returns the first `Date` in the sequence.

Methods in javax.swing with parameters of type Comparable
`void` SpinnerDateModel.`setEnd​(Comparable<Date> end)` Changes the upper limit for `Date`s in this sequence.
`void` SpinnerNumberModel.`setMaximum​(Comparable<?> maximum)` Changes the upper bound for numbers in this sequence.
`void` SpinnerNumberModel.`setMinimum​(Comparable<?> minimum)` Changes the lower bound for numbers in this sequence.
`void` SpinnerDateModel.`setStart​(Comparable<Date> start)` Changes the lower limit for Dates in this sequence.

Constructors in javax.swing with parameters of type Comparable
`SpinnerDateModel​(Date value, Comparable<Date> start, Comparable<Date> end, int calendarField)` Creates a `SpinnerDateModel` that represents a sequence of dates between `start` and `end`.
`SpinnerNumberModel​(Number value, Comparable<?> minimum, Comparable<?> maximum, Number stepSize)` Constructs a `SpinnerModel` that represents a closed sequence of numbers from `minimum` to `maximum`.

### Uses of Comparable in javax.swing.event

Classes in javax.swing.event that implement Comparable
`static class` `RowSorterEvent.Type` Enumeration of the types of `RowSorterEvent`s.

### Uses of Comparable in javax.swing.plaf.nimbus

Classes in javax.swing.plaf.nimbus that implement Comparable
`protected static class` `AbstractRegionPainter.PaintContext.CacheMode` Cache mode.

### Uses of Comparable in javax.swing.text

Methods in javax.swing.text that return Comparable
`Comparable<?>` InternationalFormatter.`getMaximum()` Returns the maximum permissible value.
`Comparable<?>` InternationalFormatter.`getMinimum()` Returns the minimum permissible value.

Methods in javax.swing.text with parameters of type Comparable
`void` InternationalFormatter.`setMaximum​(Comparable<?> max)` Sets the maximum permissible value.
`void` InternationalFormatter.`setMinimum​(Comparable<?> minimum)` Sets the minimum permissible value.

### Uses of Comparable in javax.swing.text.html

Classes in javax.swing.text.html that implement Comparable
`static class` `FormSubmitEvent.MethodType` Represents an HTML form method type.

### Uses of Comparable in javax.tools

Classes in javax.tools that implement Comparable
`static class` `Diagnostic.Kind` Kinds of diagnostics, for example, error or warning.
`static class` `DocumentationTool.Location` Locations specific to `DocumentationTool`.
`static class` `JavaFileObject.Kind` Kinds of JavaFileObjects.
`class` `StandardLocation` Standard locations of file objects.

### Uses of Comparable in javax.xml.catalog

Classes in javax.xml.catalog that implement Comparable
`static class` `CatalogFeatures.Feature` A Feature type as defined in the Catalog Features table.

### Uses of Comparable in javax.xml.xpath

Classes in javax.xml.xpath that implement Comparable
`static class` `XPathEvaluationResult.XPathResultType` XPathResultType represents possible return types of an XPath evaluation.

### Uses of Comparable in jdk.dynalink

Classes in jdk.dynalink that implement Comparable
`class` `StandardNamespace` An enumeration of standard namespaces defined by Dynalink.
`class` `StandardOperation` Defines the standard dynamic operations.

### Uses of Comparable in jdk.dynalink.linker

Classes in jdk.dynalink.linker that implement Comparable
`static class` `ConversionComparator.Comparison` Enumeration of possible outcomes of comparing one conversion to another.

### Uses of Comparable in jdk.javadoc.doclet

Classes in jdk.javadoc.doclet that implement Comparable
`static class` `Doclet.Option.Kind` The kind of an option.
`static class` `DocletEnvironment.ModuleMode`
`static class` `Taglet.Location` The kind of location in which a tag may be used.

### Uses of Comparable in jdk.jfr

Classes in jdk.jfr that implement Comparable
`class` `RecordingState` Indicates a state in the life cycle of a recording.

### Uses of Comparable in jdk.jshell

Classes in jdk.jshell that implement Comparable
`static class` `Snippet.Kind` Describes the general kind of snippet.
`static class` `Snippet.Status` Describes the current state of a Snippet.
`static class` `Snippet.SubKind` The detailed variety of a snippet.
`static class` `SourceCodeAnalysis.Completeness` Describes the completeness of the given input.

### Uses of Comparable in jdk.nashorn.api.tree

Classes in jdk.nashorn.api.tree that implement Comparable
`static class` `Diagnostic.Kind` Deprecated, for removal: This API element is subject to removal in a future version. Nashorn JavaScript script engine and APIs, and the jjs tool are deprecated with the intent to remove them in a future release.
`static class` `Tree.Kind` Deprecated, for removal: This API element is subject to removal in a future version. Nashorn JavaScript script engine and APIs, and the jjs tool are deprecated with the intent to remove them in a future release.

### Uses of Comparable in jdk.net

Classes in jdk.net that implement Comparable
`static class` `SocketFlow.Status` Enumeration of the return values from the SO_FLOW_SLA socket option.