org.apache.poi.ss.util

## Class CellAddress

- java.lang.Object
- - org.apache.poi.ss.util.CellAddress

- All Implemented Interfaces:
    java.lang.Comparable<CellAddress>

      public class CellAddress
      extends java.lang.Object
      implements java.lang.Comparable<CellAddress>

  This class is a container for POI usermodel row=0 column=0 cell references. It is barely a container for these two coordinates. The implementation of the Comparable interface sorts by "natural" order top left to bottom right.

  Use `CellAddress` when you want to refer to the location of a cell in a sheet when the concept of relative/absolute does not apply (such as the anchor location of a cell comment). Use `CellReference` when the concept of relative/absolute does apply (such as a cell reference in a formula). `CellAddress`es do not have a concept of "sheet", while `CellReference`s do.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static CellAddress` | `A1` A constant for references to the first cell in a sheet.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `CellAddress(Cell cell)` Create a new CellAddress object.
    `CellAddress(CellAddress address)` Create a new CellAddress object
    `CellAddress(CellReference reference)` Create a new CellAddress object.
    `CellAddress(int row, int column)` Create a new CellAddress object.
    `CellAddress(java.lang.String address)` Create a new CellAddress object.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `compareTo(CellAddress other)` Compare this CellAddress using the "natural" row-major, column-minor ordering.
    `boolean` | `equals(java.lang.Object o)`
    `java.lang.String` | `formatAsString()` Same as `toString()`
    `int` | `getColumn()` Get the cell address column
    `int` | `getRow()` Get the cell address row
    `int` | `hashCode()`
    `java.lang.String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### A1

          public static final CellAddress A1

      A constant for references to the first cell in a sheet.

  - ### Constructor Detail

    - #### CellAddress

          public CellAddress(int row,
                             int column)

      Create a new CellAddress object.
      Parameters:
        `row` - Row index (first row is 0)
        `column` - Column index (first column is 0)

    - #### CellAddress

          public CellAddress(java.lang.String address)

      Create a new CellAddress object.
      Parameters:
        `address` - a cell address in A1 format. Address may not contain sheet name or dollar signs. (that is, address is not a cell reference. Use `CellAddress(CellReference)` instead if starting with a cell reference.)

    - #### CellAddress

          public CellAddress(CellReference reference)

      Create a new CellAddress object.
      Parameters:
        `reference` - a reference to a cell

    - #### CellAddress

          public CellAddress(CellAddress address)

      Create a new CellAddress object
      Parameters:
        `address` - a CellAddress

    - #### CellAddress

          public CellAddress(Cell cell)

      Create a new CellAddress object.
      Parameters:
        `cell` - the Cell to get the location of

  - ### Method Detail

    - #### getRow

          public int getRow()

      Get the cell address row
      Returns:
        row

    - #### getColumn

          public int getColumn()

      Get the cell address column
      Returns:
        column

    - #### compareTo

          public int compareTo(CellAddress other)

      Compare this CellAddress using the "natural" row-major, column-minor ordering. That is, top-left to bottom-right ordering.
      Specified by:
        `compareTo` in interface `java.lang.Comparable<CellAddress>`
      Parameters:
        `other` -
      Returns:
        - -1 if this CellAddress is before (above/left) of other
        - 0 if addresses are the same
        - 1 if this CellAddress is after (below/right) of other

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### formatAsString

          public java.lang.String formatAsString()

      Same as `toString()`
      Returns:
        A1-style cell address string representation

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.