HBAR

Constructor

Type

Description

new Hbar(<amount>)

Hbar

Initializes the Hbar object

new Hbar(<amount>)

HBAR from:

Construct HBAR from different representations.

Method

Type

Description

Hbar.from(<hbars>)

long / BigDecimal

Returns an Hbar whose value is equal to the specified value

Hbar.from(<hbars, unit>)

long / BigDecimal , HbarUnit

Returns an Hbar representing the value in the given units

Hbar.fromString(<text>)

CharSequence

Converts the provided string into an amount of hbars

Hbar.fromString(<text, unit>)

CharSequence, HbarUnit

Converts the provided string into an amount of hbars

Hbar.fromTinybars(<tinybars>)

long

Returns an Hbar converted from the specified number of tinybars

//10 HBAR
new Hbar(10);

//10 HBAR from hbar value
Hbar.from(10);

//100 tinybars from HBAR convert to unit
Hbar.from(100, HbarUnit.TINYBAR);

// 10 HBAR converted from string value
Hbar.fromString("10");

//100 tinybars from string value
Hbar.fromString("10", HbarUnit.TINYBAR);

//v2.0.0

HBAR to:

Convert HBAR to a different unit/format.

Method

Type

Description

to(<unit>)

HbarUnit

Specify the unit of hbar to convert to. Use As for Go.

toString(<unit>)

HbarUnit

String value of the hbar unit to convert to. Use String() for Go.

toTinybars()

Long

Hbar value converted to tinybars

//10 HBAR converted to tinybars
new Hbar(10).to(HbarUnit.TINYBAR);

//10 HBAR converted to tinybars
new Hbar(10).toString(HbarUnit.TINYBAR);

//10 HBAR converted to tinybars
new Hbar(10).toTinybars();

//v2.0.0

HBAR constants:

Provided constant values of HBAR.

Method

Type

Description

Hbar.MAX

Hbar

A constant value of the maximum number of hbars (50_000_000_000 hbars)

Hbar.MIN

Hbar

A constant value of the minimum number of hbars (-50_000_000_000 hbars)

Hbar.ZERO

Hbar

A constant value of zero hbars

//The maximum number of hbars
Hbar hbarMax = Hbar.MAX; 

//The minimum number of hbars
Hbar hbarMin = Hbar.MIN;

//A constant value of zero hbars
Hbar hbarZero = Hbar.ZERO; 

//v2.0.0

HBAR units

Modify the HBAR representation to one of the HBAR denominations.

Function

Description

HbarUnit.TINYBAR

The atomic (smallest) unit of hbar, used natively by the Hedera network

HbarUnit.MICROBAR

Equivalent to 100 tinybar or 1⁄1,000,000 hbar.

HbarUnit.MILLIBAR

Equivalent to 100,000 tinybar or 1⁄1,000 hbar

HbarUnit.HBAR

The base unit of hbar, equivalent to 100 million tinybar.

HbarUnit.KILOBAR

Equivalent to 1 thousand hbar or 100 billion tinybar.HbarUnit.Megabar

HbarUnit.MEGABAR

Equivalent to 1 million hbar or 100 trillion tinybar.

HbarUnit.GIGABAR

Equivalent to 1 billion hbar or 100 quadrillion tinybar.

//100 tinybars
Hbar.from(100, HbarUnit.TINYBAR);

//v2.0.0

HBAR decimal places

The decimal precision of HBAR varies across the different Hedera APIs. While HAPI, JSON-RPC Relay, and Hedera Smart Contract Service (EVM) provide 8 decimal places, the msg.value in JSON-RPC Relay provides 18 decimal places.

API
Decimal

Hedera API (HAPI) (Crypto + SCS Service (msg.value))

8

Hedera Smart Contract Service (EVM)

8

JSON RPC Relay (passed as arguments)

8

JSON RPC Relay (msg.value)

18

Note: The JSON-RPC Relay msg.value uses 18 decimals when it returns HBAR. As a result, the gasPrice also uses 18 decimal places since it is only utilized from the JSON-RPC Relay.

Last updated